Surcharger les opérateurs mathématiques
Publié : lun. 08/janv./2007 22:31
Bonjour
Je pense qu'il serait bien de pouvoir surcharger les opérateurs mathématiques pour les rendrent compatibles avec les structures de données en indiquant au compilateur ce qu'il doit faire. Dans l'exemple ci-dessous, il y a les mots clef "Equal", "Plus" et "Minus" mais l'utilisation des symboles mathématiques correspondant serait peut-être mieux. ("=", "+", "-", ...)
La chose est possible en C++, alors pourquoi pas avec PB ?
A+
Guimauve
Je pense qu'il serait bien de pouvoir surcharger les opérateurs mathématiques pour les rendrent compatibles avec les structures de données en indiquant au compilateur ce qu'il doit faire. Dans l'exemple ci-dessous, il y a les mots clef "Equal", "Plus" et "Minus" mais l'utilisation des symboles mathématiques correspondant serait peut-être mieux. ("=", "+", "-", ...)
La chose est possible en C++, alors pourquoi pas avec PB ?
A+
Guimauve
Code : Tout sélectionner
; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
; Suggestion : Operator Overcharge
; Suggested by : Guimauve
; Date : 08-01-2007
; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Structure Vector3
i.f
j.f
k.f
EndStructure
MathsOperator *RHS.Vector3 Equal *LHS.Vector3 ;>
*RHS\i = *LHS\i
*RHS\j = *LHS\j
*RHS\k = *LHS\k
EndMathsOperator ;<
MathsOperator *RHS.Vector3 Plus *LHS.Vector3 ;>
*RHS\i + *LHS\i
*RHS\j + *LHS\j
*RHS\k + *LHS\k
EndMathsOperator ;<
MathsOperator *RHS.Vector3 Minus *LHS.Vector3 ;>
*RHS\i - *LHS\i
*RHS\j - *LHS\j
*RHS\k - *LHS\k
EndMathsOperator ;<
; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
; <<<<< Inside the program <<<<<
VectorA.Vector3
VectorB.Vector3
VectorC.Vector3
vectorR.Vector3
vectorR = VectorA + VectorB - VectorC
; <<<<<<<<<<<<<<<<<<<<<<<
; <<<<< END OF FILE <<<<<
; <<<<<<<<<<<<<<<<<<<<<<<