Guillemouze
Messages postés991Date d'inscriptionsamedi 25 octobre 2003StatutMembreDernière intervention29 août 2013
-
30 oct. 2006 à 12:30
Guillemouze
Messages postés991Date d'inscriptionsamedi 25 octobre 2003StatutMembreDernière intervention29 août 2013
-
31 oct. 2006 à 09:17
salut a tous, mon probleme est assez simple a ennoncer, mais je ne comprend pas pourquoi ca ne marche pas.
Je cherche a faire des constantes sur mes records, qui sont structures ainsi :
type
point = record
x: extended;
y: extended;
z: extended;
end;
const
pointNul : point = (x: 0; y: 0; z:0);
function setPoint(x,y,z: extended): point;
type
repere = record
o: point;
x: point;
y: point;
end;
const
repereStandard: repere = ( o: (x:0;y:0;z:0); x: (x:1;y:0;z:0); y: (x:0;y:1;z:0)); //celui ci marche
repereStandard: repere = ( o: pointNul; x: setPoint(1,0,0); y: setPoint(0,1,0)); //la je voudrais utiliser des constantes/fonctions
donc je souhaiterais savoir si il est possible d'utiliser des constantes/fonctions dans la declaration ci dessus.
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023124 30 oct. 2006 à 13:31
pointNul n'est pas un type, j'ai parler trop vite (l'habitude du C). C'est pour ca que j'ai corrigé... Mais mon browser a quand meme envoyé l'autre avant que j'ai eu le temps d'annuler.
Par contre je maintiens que tu ne puisse pas executer de fonctions dans un déclaration de constantes. Si tu mets une fonctions dans une constantes, le resultat devient depedant de la fonction et n'est donc plus constant...
f0xi
Messages postés4205Date d'inscriptionsamedi 16 octobre 2004StatutModérateurDernière intervention12 mars 202237 30 oct. 2006 à 14:54
oui on ne peu mettre de fonctions dans les declarations de constante.
par contre tu peu declarer tes constantes en variables et les initialisées dans la partie Initialization de l'unité.
attention aux identifiants existant et aux conventions d'ecriture!
type
TPointEx = record
x,y,z: extended;
end;
TReperePEX = record
rO,rX,rY : TPointEx;
end;
function PointEx(const Ax,Ay,Az : extended) : TPointEx;
begin
result.X := Ax;
result.Y := Ay;
result.Z := Az;
end;
Guillemouze
Messages postés991Date d'inscriptionsamedi 25 octobre 2003StatutMembreDernière intervention29 août 20136 30 oct. 2006 à 15:16
heu je crois que tu n'as pas bien compris ma question foxi.
ce que je veux faire, c'est passer une constante que j'ai cree en tant que parametre par defaut d'une fonction.
pour reprendre ton exemple, j'aurai :