Bonjour,

Je déclare deux méthodes dans Unit2.h (section public):

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 void __fastcall calcul1 (int, int);
void __fastcall calcul2 (int, int);
J'implémente ces deux méthodes dans Unit2.cpp:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 void __fastcall TForm2::calcul1(int x, int y)
{
//
}
 
void __fastcall TForm2::calcul2(int x, int y)
{
//
}
Quand j'appelle ces deux méthodes consécutivement dans un gestionnaire d'événement:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 void __fastcall TForm2::MyButtonClick(TObject *Sender)
{
Form1->variable1 = a; // variable1 est déclarée dans la classe Form1
Form1->variable2 = b;
calcul1(Form1->variable1, Form1->variable2);
calcul2(Form1->variable1, Form1->variable2);
}
la première est exécutée normalement, mais au début de l'éxécution de la seconde il y a un problème (Message Violation d'accès à l'adresse XXXXXX dans le module Project1.exe. Lecture à l'adresse XXXXXXX).

Quand j'appelle ces deux méthodes séparémment dans deux gestionnaires d'événements différents, il n'y a pas de problème.

Merci de m'expliquer mon erreur.