Я бы хотел сделать следующее:
class MyClass {
public:
MyClass() : arr({1,2,3,4,5,6,7,8}) {}
private:
uint32_t arr[8];
};
, но это не работает (компилятор: ожидаемое первичное выражение перед маркером '}'.). Я смотрел на другие вопросы SO, и люди раздавали такие вещи, как std::initializer_list
, и пробовали интересные вещи, такие как размещение инициализатора массива в двойных скобках, например:
MyClass() : arr( {{1,2,3,4,5,6,7,8}} ) {}
но я незнаком с целью std::initializer_list
, а также я не совсем уверен, почему в приведенном выше коде есть двойные скобки (хотя он все равно не работает, поэтому я не уверен, почему это важно) .
Есть ли нормальный способ инициализации моей переменной arr
в списке инициализатора конструктора?