gpt4 book ai didi

c++ - 为什么这个 C++ 代码不能编译?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:55:44 25 4
gpt4 key购买 nike

看到我是 C++ 的新手,我想我会尝试编写一个非常简单的控制台应用程序来填充二维数组并显示其内容。

但是我编写的代码无法编译。

我得到的一些错误是:

错误 C2065:“盒子”:未声明的标识符
error C2228: '.GenerateBox' 左边必须有类/结构/union

这是我的代码:

#include <iostream>
using namespace std;

int main()
{
Box box;
box.GenerateBox();
}

class Box
{
private:
static int const maxWidth = 135;
static int const maxHeight = 60;
char arrTest[maxWidth][maxHeight];

public:
void GenerateBox()
{
for (int i=0; i<maxHeight; i++)
for (int k=0; k<maxWidth; k++)
{
arrTest[i][k] = 'x';
}

for (int i=0; i<maxHeight; i++)
{
for (int k=0; k<maxWidth; k++)
{
cout << arrTest[i][k];
}
cout << "\n";
}
}
};

知道是什么导致了这些错误吗?

最佳答案

C++ 编译器一次性读取源文件,从上到下。您在底部描述了 Box 类,在 main() 之后,在您尝试使用该类的部分之后。因此,当编译器到达您说“Box box;”的部分时,它还没有看到类定义,因此不知道“Box”是什么意思。

关于c++ - 为什么这个 C++ 代码不能编译?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6909530/

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