gpt4 book ai didi

c++ - 在类默认构造函数中初始化 2x2 矩阵

转载 作者:太空狗 更新时间:2023-10-29 20:43:30 24 4
gpt4 key购买 nike

我试图在 C++ 中创建一个 2x2 矩阵类,并希望通过默认构造函数将矩阵初始化为单位矩阵。我的类(class)是:

class Matrix2x2
{
public:
Matrix2x2();
void setVal(int row, int col, double newVal);

private:
double n[2][2];
};

void Matrix2x2::setVal(int row, int col, double newVal)
{
n[row][col] = newVal;
}

我尝试了几个不同的构造函数,但没有一个能满足我的要求。

Matrix2x2::Matrix2x2(): setVal(0,0,1), setVal(0,1,0), setVal(1,0,0), setVal(1,1,1)
{ }

 Matrix2x2::Matrix2x2(): n[0][0](1), n[0][1](0), n[1][0](0), n[1][1](1)
{ }

我意识到这可能只是某个地方的一个简单错误,但我似乎找不到它,有什么想法吗?

最佳答案

您可以使用数组聚合:

class Matrix2x2 {
public:
Matrix2x2() : n({{3,1},{4,7}}) {
}
void setVal(int row, int col, double newVal);
private:
double n[2][2];
};

Demo on ideone.

关于c++ - 在类默认构造函数中初始化 2x2 矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15117717/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com