Je suis donc sous Linux avec une librairie QT.
Un de mes fichiers comprend un constructeur où est défini une méthode de
la façon suivante:
Code:
IntVector -> typedef QvalueVector<int>
public slots:
void mamethode (int, IntVector*);
Dans mon code j'ai juste ça sur cette méthode :
connect (news_tree_list, SIGNAL (nodeEntered (int, IntVector*)), this,
SLOT (mamethode(int, IntVector*));
L'appel de la méthode se fait donc par :
mamethode(int , IntVector*)
J'ai besoin d'initialisé les paramètres de cette méthode lorsque
l'instance de classe est créée. La première instance tout se passe bien.
Ensuite je quitte le module et je détruis cette instance de classe.
Lorsque je crée la deuxième instance de classe, mes paramètres n'ont pas
les mêmes valeurs que la première fois.
Ces types doivent désigner implicitement des variables, non?
Je ne connais pas cette façon de déclarer et d'utiliser de telles méthodes.
Ma question est donc comment manipuler les paramètres de ctte méthode
sachant que il n'y a rien comme:
mamethod (int monentier, IntVector monvecteur)
Merci pour vos réponses et j'espère avoir été le plus clair possible.
en tout cas, c'est dans un morceau de code en C++ et QT d'un programme sur lequel je me suis basé.
Ah (ça me reviens maintenant), je me demande si Qt n'utilise pas un préprocesseur maison pour gérer des extensions propres. Exact ?
--drkm
Gabriel Dos Reis
drkm writes:
| Vincent Derrien writes: | | | >> Vincent Derrien writes: | | >>>Code: | >>>IntVector -> typedef QvalueVector<int> | | >>>public slots: | >>>void mamethode (int, IntVector*); | | >> C'est du C++, ça ? | | > Oui ...
Non.
| | Et pourtant ... | | > en tout cas, c'est dans un morceau de code en C++ et QT d'un | > programme sur lequel je me suis basé. | | Ah (ça me reviens maintenant), je me demande si Qt n'utilise pas un | préprocesseur maison pour gérer des extensions propres. Exact ?
Oui. Voir moc.
-- Gaby
drkm <usenet.fclcxx@fgeorges.org> writes:
| Vincent Derrien <vincent@ahoup.net> writes:
|
|
| >> Vincent Derrien <vincent@ahoup.net> writes:
|
| >>>Code:
| >>>IntVector -> typedef QvalueVector<int>
|
| >>>public slots:
| >>>void mamethode (int, IntVector*);
|
| >> C'est du C++, ça ?
|
| > Oui ...
Non.
|
| Et pourtant ...
|
| > en tout cas, c'est dans un morceau de code en C++ et QT d'un
| > programme sur lequel je me suis basé.
|
| Ah (ça me reviens maintenant), je me demande si Qt n'utilise pas un
| préprocesseur maison pour gérer des extensions propres. Exact ?
| Vincent Derrien writes: | | | >> Vincent Derrien writes: | | >>>Code: | >>>IntVector -> typedef QvalueVector<int> | | >>>public slots: | >>>void mamethode (int, IntVector*); | | >> C'est du C++, ça ? | | > Oui ...
Non.
| | Et pourtant ... | | > en tout cas, c'est dans un morceau de code en C++ et QT d'un | > programme sur lequel je me suis basé. | | Ah (ça me reviens maintenant), je me demande si Qt n'utilise pas un | préprocesseur maison pour gérer des extensions propres. Exact ?
Oui. Voir moc.
-- Gaby
drkm
Loïc Joly writes:
Pour le problème initial, je pense qu'il s'agit juste d'un problème de C++ :
Rien n'empêche quand une fonction est déclarée : void mamethode (int, IntVector*);
De l'implémenter : void mamethod (int monentier, IntVector *monvecteur) {}
En effet, ça devrait être ce que le PO cherche. J'avoue que je n'ai pas lu tout l'article attentivement, lorsque j'ai vu les bizareries MOC.