如何解决Visual Studio 好像坏了
所以我是 Visual Studio 的新手,因为我尝试使用 gdi+ 制作一个 3d 游戏引擎(提到它会引发一些错误,但最初我处理了它们,也许它以某种方式干扰了代码,但我不确定)。在我决定实现这个类之前,我已经完成了所有设置并且代码运行正常:
`
class kostka
{
public:
wierzcholek3D ldf(0,0);
wierzcholek3D rdf(1,0);
wierzcholek3D luf(0,1,0);
wierzcholek3D ruf(1,0);
wierzcholek3D ldb(0,1);
wierzcholek3D lub(0,1);
wierzcholek3D rdb(1,1);
wierzcholek3D rub(1,1);
//n
trojkat n1(ldf,rdf,luf);
trojkat n2(ruf,luf);
//w
trojkat w1(ldf,luf,ldb);
trojkat w2(lub,ldb);
//e
trojkat e1(rdf,ruf,rdb);
trojkat e2(rub,rdb);
//s
trojkat s1(ldb,rdb,lub);
trojkat s2(rub,lub);
//t
trojkat t1(luf,lub);
trojkat t2(rub,lub);
//b
trojkat b1(ldf,ldb);
trojkat b2(rdb,ldb);
};`
which is a sort of container for a cube where wierzcholek3D is supposed to be a verticle and trojkat are triangles making up the faces of the cube,also there is the verticle declaration:
`
class wierzcholek3D
{
public:
float x,y,z;
wierzcholek3D(float xc,float yc,float zc)
{
x = xc;
y = yc;
z = zc;
}
wierzcholek3D() {}
//~wierzcholek2D();
};
Also separately i have this error about an array:
class projmatrix{
public:
float nera = 0.1,fra = 1000,fov = 90,aratio = HEIGHT / (float)WIDTH;
float fovtan = 1 / tanf((fov * 0.5 / 180) * 3.14159);
float m[4][4] = {0};
m[0][0] = aratio * fovtan;
m[1][1] = fovtan;
m[2][2] = fra/(fra-nera);
m[3][2] = (-fra*nera)/(fra-nera);
m[2][3] = 1;
};
这是我得到的错误列表:
1>D:\visual studio\prog\WindowsProject1\WindowsProject1\WindowsProject1.cpp(103,17): error C2087: 'm': missing subscript
关于数组的错误,我用谷歌搜索它,它看起来不像我所做的可能导致它或者我现在认为。
1>D:\visual studio\prog\WindowsProject1\WindowsProject1\WindowsProject1.cpp(67,27): error C2059: Syntax error: 'constant'
不知道这是怎么引起的,也许我是愚蠢的或坏的
无论如何,任何形式的帮助都会受到赞赏,因为我花了一整天的时间来弄清楚,我真的很生自己的气,因为这可能是一个菜鸟错误 `
解决方法
Visual Studio 被广泛使用。它极不太可能被破坏。原因很可能是您的错误。你必须隔离它。
- 专注于标记的第一个错误。通常一个错误会导致它们的级联。
- 尽量剪掉文件,保留错误。这有助于专注于问题所在。
- 一个简短的 MWE(最小的工作示例,更好的非工作示例)可以让任何潜在的回答者的工作变得更加轻松,并且会为您提供更多高质量的答案。花半个小时减少例子,赢得等待答案的时间。
这里我怀疑您的 float m[4][4] = {0}
,因为您尝试使用单个值初始化 $4 \times 4$ 数组。也许有些编译器允许这样做,我不是语言律师。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。