1

j'ai fait une classe dérivée d'une autre classe: (je marque pas les constructeurs)
class A {
public:
    virtual void machin();
}

class B: public A {
public:
    virtual void machin();
}

j'ai un objet de type B (la sous classe) dans laquelle j'appelle la méthode machin()
Je voudrais que cette méthode commence par appeler A::machin() (c'est un widget en fait, et machin c'est paint grin)
je dois faire comment? je vois pas autrement qu'avec un cast:
void A::machin() {
    //trucs a machiner dans A
}

void B::machin() {
    ((A*)this)->machin();
    //trucs à machiner dans B
}

C'est bien ça?
le super.machin() de java me manque sad (mais je comprends qu'il soit pas dispo, vu l'héritage multiple)

2

void A::machin() { 
    //trucs a machiner dans A 
} 
 
void B::machin() { 
    A::machin(); 
    //trucs à machiner dans B 
}
?

3

ah ouais? même si machin est pas une méthode de classe mais d'instance?

4

Je sais plus si ce n'est que pour les constructeurs, mais il me semble qu'il y a moyen de fairfe un truc genre :

void A::machin() {  
    //trucs a machiner dans A  
}  
  
void B::machin() : A::machin() {  
    //trucs à machiner dans B  
}


(je suis pas sur de la syntaxe...)
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

5

Gozil > sauf erreur c'est la liste d'initialisation des constructeurs ce dont tu parles.

6

squalyl (./3) :
ah ouais? même si machin est pas une méthode de classe mais d'instance?

Oui. Le nom complet est this->A::machin(); en fait, mais comme d'habitude ce n'est pas la peine de marquer le this->.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

7

Je confirme le code de spectras et j'infirme celui de Godzil (tu dois confondre avec le constructeur - mais faut dire que le C++ est tellement bordélique...)
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

8

(cf ce que je dit au debut de mon post "Je sais plus si ce n'est que pour les constructeurs," ^^)
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

9

10

Sasume (./7) :
mais faut dire que le C++ est tellement bordélique

oui couic

11

j'avais jamais mis réellement les mains dedans, mais oui, maintenant je confirme #trisick#

12

rah j'adore ce genre de message d'erreur:
[nosmile]
In member function `virtual void DlgSim::doSimEvent()':
error: request for member `setText' in `(((Ui_DlgSim*)this) + 20u)->Ui_DlgSim::txtInterp', which is of non-class type `QLineEdit*'


(j'ai juste mis txtInterp.setText a la place de txtInterp->setText ^^ , mais au début j'ai bien galéré pour comprendre le message triso)

13

les erreurs de compilations ça va encore (contrairement aux erreurs du linker)

14

ué, mais a part des références avec des noms fonctions manglés ça allait.

là j'ai un cast avec de l'arithmétique de pointeurs trilove

15

Jyaif (./13) :
les erreurs de compilations ça va encore (contrairement aux erreurs du linker)

du linker primitif GNU tu veux dire?
Tout ce qui passe pas par le port 80, c'est de la triche.

16

Primitif par rapport à ld-tigcc, tu veux dire? gni
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

17

déjà primitif par rapport à la reprise from-scratch de google, ld-tigcc je sais pas.

je connais pas le verbose de leur nouveau linker mais là je parle de retard au niveau performance
Tout ce qui passe pas par le port 80, c'est de la triche.

18

google a recodé GNU ld? (ceci dit c'est vrai ld-mingw32 est lanterne pour linker 3 conneries de C++)

19

ld n'est pas adapté a windows, et les toolchain GNU sont passablement lentes sous windows...
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

20