Bonjour à tous,
dans cette FAQ, il est écrit que:
Etant sous-entendu queDans ce cas, l'expression n'importe quoi provoque la création d'un objet temporaire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Fred::Fred() : x_() { x_ = n'importe quoi; }Ne le fait pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Fred::Fred(valeur) : x_(valeur) { }
1ere question:
Les 2 codes suivants sont-ils équivalent (est-ce que ce sera le même code ASM généré):
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Fred::Fred() : x_() // avec liste d'initialisation, mais vide { x_ = n'importe quoi; // et une affectation }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Fred::Fred() // sans liste d'initialisation { x_ = n'importe quoi; // et une affectation }
2eme question
Connaissez-vous des cas précis où les 2 codes suivants ne sont pas identiques (pas le même code ASM généré):
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Fred::Fred() // sans liste d'initialisation { x_ = n'importe quoi; }Parce que ça fait un moment que je cherche, avec des types composés et tout, mais à chaque fois l'asm est le même.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Fred::Fred(valeur) : x_(valeur) // avec liste d'initialisation { }
Partager