Salut,
Je me suis mis il y a peu au C# pour un projet, et je doit malheureusement coder comme avec les autres langages, ce qui me porte tord, et il y a des choses que je ne comprend avec C#.
J'ai une fonction qui doit me ramener un objet.
Le problème vient de fRet=feature. Je pensais recopier un objet dans un autre objet. Mais non ! On se retrouve avec 2 pointeurs qui localisent le même objet.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 private Boolean getElemNear(out IFeature fRet,IPoint Px) { double distMin; double dist; Boolean bRet=false; ........ fRet = null; IFeature feature = fCursor.NextFeature(); ......... IProximityOperator proximityOperator = Px as IProximityOperator; while (feature != null) { // Recherche distance mini dist = proximityOperator.ReturnDistance(feature.Shape); if (dist<distMin) { distMin = dist; fRet=feature; bRet = true; } feature = fCursor.NextFeature(); } return bRet; }
Résultat, fRet pointe toujours sur 'null', et je ne trouve pas comment faire pour copier cet objet dans ma variable de retour !
Il faut savoir que :
- Il n'y a pas de fonction clone dans cet objet.
- pas de duplication dans le contructeur
- les fonctions 'serialize' ne sont pas disponible pour ce framework !
Comment puis-je faire ?
Merci.
Partager