Bonjour,
J'ai créé une classe matrice pour inclure le calcul matriciel dans mon programme. Je sais que des librairies existent mais moi je veux pas les utiliser. Je tiens à le faire par moi-même.
J'ai surchargé l'opérateur () pour pouvoir accéder a un élément tableau private. Voilà le code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
L'intérêt est de pouvoir déclarer une matrice M et d'appeler ses éléments avec M(0,0) ou M(2,3), etc... ça marche bien sauf si M est un pointeur. Cette fonction ne marche pas et je ne sais pas pourquoi:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
Il ne comprend pas l'opérateur -. Normal car je ne l'ai pas surchargé. En revanche l'opération devrait se passer entre des double, et pas des Matrices. J'en conclu que M[0,0] ne renvoie pas un double mais une matrice apparament. Pourquoi????
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
Merci de votre aide.
Cordialement

 

 
		
		 
         
 

 
			
			


 
   
 


 Comment surcharger l'opérateur () ?
 Comment surcharger l'opérateur () ?
				 Répondre avec citation
  Répondre avec citation

 
  
  
 
 
			 
  
 
				 )
 ) 
						 A méditer: La solution la plus simple est toujours la moins compliquée
A méditer: La solution la plus simple est toujours la moins compliquée 
  )
)

 
 
 
 
 
   Envoyé par Avatar36
 Envoyé par Avatar36
					
 
  
  ), il est très largement préférable de "déréférencer" le pointeur this afin de transmettre l'objet courant sous la forme d'une référence (qui pourra en cas de besoin(*) être constante), et cela, pour toute une série de raisons, les principales étant :
 ), il est très largement préférable de "déréférencer" le pointeur this afin de transmettre l'objet courant sous la forme d'une référence (qui pourra en cas de besoin(*) être constante), et cela, pour toute une série de raisons, les principales étant :
Partager