错误:从初始化列表分配给数组

Kea*_*ito 15 c++ arrays assign

我有一个班级,如:

class dialog
{
    public:
    double dReturnType[][5][3];
};
Run Code Online (Sandbox Code Playgroud)

 

#include <cstdlib>
#include <iostream>
include <string>

using namespace std;
#include "dialog.h";

int main(int argc, char *argv[])
{
    dialog People;
    People.dReturnType[0][1] = {1.2,2.3,6.6};
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

它返回:

[警告]扩展初始化程序列表仅适用于-std = c ++ 11或-std = gnu11 [默认启用] [错误]:从初始化程序列表分配数组

我在网上看了一下,真的找不到解决这个问题的方法.我不希望在类文件中编辑类(有点打败目的).有帮助吗?

注意:该类位于单独的项目文件中

mas*_*oud 18

初始化程序列表仅在初始化期间可用.

如果要std::initializer_list在初始化后使用:

auto init = std::initializer_list<double>({1.2,2.3,6.6});
std::copy(init.begin(), init.end(), your_array);
Run Code Online (Sandbox Code Playgroud)