J'ai un constructeur qui prend quelques arguments. J'avais supposé qu'ils ont été construits dans l'ordre indiqué, mais dans un cas, il semble qu'ils étaient construits à l'envers, ce qui a entraîné un avortement. Lorsque j'ai inversé les arguments, le programme a cessé d'interrompre. Ceci est un exemple de la syntaxe que j'utilise. Le fait est que a_ doit être initialisé avant b_ dans ce cas. Pouvez-vous garantir l'ordre de construction?
par exemple
class A
{
public:
A(OtherClass o, string x, int y) :
a_(o), b_(a_, x, y) { }
OtherClass a_;
AnotherClass b_;
};