假设我们有以下的C++11或更新版本的类:
假设类SomeType有一个构造函数,只需要一个SomeOtherType作为参数,那么是否可以在构造函数中使用列表初始化方式初始化const成员数组呢?如果可以,语法是什么?
显然,直接像这样初始化是行不通的:
class MyClass {
private:
const std::array<SomeType, 100> myArray;
public:
explicit MyClass(std::array<SomeOtherType, 100> initArray);
};
假设类SomeType有一个构造函数,只需要一个SomeOtherType作为参数,那么是否可以在构造函数中使用列表初始化方式初始化const成员数组呢?如果可以,语法是什么?
显然,直接像这样初始化是行不通的:
MyClass::MyClass(std::array<SomeOtherType, 100> initArray) :
myArray{initArray} {}
谢谢!
std::initializer_list
的文档。如果您正在使用GCC编译,您可能会发现这篇文章很有用:https://dev59.com/h2sy5IYBdhLWcg3w-i7h - HappyKeyboard