Порядок оценки списка инициализации конструктора

У меня есть конструктор, который принимает некоторые аргументы. Я предполагал, что они были построены в указанном порядке, но в одном случае кажется, что они были построены в обратном порядке, что привело к прерыванию. Когда я изменил аргументы, программа перестала прерываться. Это пример синтаксиса I 'м с помощью. Дело в том, что a_ нужно инициализировать перед b_ в этом случае. Можете ли вы гарантировать порядок строительства?

например

class A
{
  public:
    A(OtherClass o, string x, int y) :
      a_(o), b_(a_, x, y) { }

    OtherClass a_;
    AnotherClass b_;
};

Ответы на вопрос(3)

Ваш ответ на вопрос