c++ - 在 C++ 类中初始化二维数组

标签 c++ arrays initialization

我正在尝试在 Construct 类中初始化 nums 二维数组。我正在使用默认构造函数来初始化它,但由于它已经创建,所以我无法这样做。我也不能在类里面初始化它。我已经尝试手动初始化每个元素并且它有效,但我只想在一行中初始化 nums

#include <iostream> 
using namespace std; 

class Construct { 
public: 
    int nums[3][3]; 

    // Default Constructor 
    construct() 
    { 
        int nums[3][3] = {{4,5,42,34,5,23,3,5,2}}
    } 
}; 

int main() 
{ 

    Construct c; 
    cout << "a: " << c.nums[1][0] << endl 
        << "b: " << c.nums[0][1]; 
    return 1; 
} 

我试过了 nums[1][0] = 5 ... 但这不是很有效。任何反馈都会很棒。

最佳答案

使用初始化列表

Construct(): nums {{4,5,42},{34,5,23},{3,5,2}}
{ }

关于c++ - 在 C++ 类中初始化二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59124979/

相关文章:

c++ - Xcode 4.2 和 lambda 表达式 (OSX Lion)

c++ - 在 g++ 中编译头文件和 cpp 文件

java - 用 boolean 值填充二维数组

c++ - 按范围初始化数组

c++ - std::stringstream 的默认 `fill character` 是什么?

c++ - 绕过经典的延迟着色光体积

c# - C#二维数组"Wrong number of indices inside [];expected 2"错误

Javascript 二维数组indexOf

c - char word[25]; 和 char word[25] 有什么区别?和 char word[25] = "";?

c - scanf 不断取值(输入)