我是C ++的初学者,之前在这方面做了很少的编码。
我在每次构建时都会收到这些构建错误。我可以设法摆脱语法错误但是错误C2661给了我所有的麻烦。
我在一行收到所有这些错误:" OpenGL = gcnew Create_OpenGL(this,10,10,640 480);"
这是我正在使用的代码。
public ref class Form1 : public System::Windows::Forms::Form
{
private: OpenGLForm::Create_OpenGL ^OpenGL; // #2 pointer to OpenGL
public:
Form1(void)
{
InitializeComponent();
-------> OpenGL = gcnew Create_OpenGL(this, 10, 10, 640 480);<------
}
以下是构建的输出:
1> OpenGl_3D.cpp
1>c:\users\shane carroll\documents\visual studio 2010\projects\opengl_3d\opengl_3d\Form1.h(29): error C2143: syntax error : missing ')' before 'constant'
1>c:\users\shane carroll\documents\visual studio 2010\projects\opengl_3d\opengl_3d\Form1.h(29): error C2661: 'OpenGLForm::Create_OpenGL::Create_OpenGL' : no overloaded function takes 4 arguments
1>c:\users\shane carroll\documents\visual studio 2010\projects\opengl_3d\opengl_3d\Form1.h(29): error C2143: syntax error : missing ';' before 'constant'
1>c:\users\shane carroll\documents\visual studio 2010\projects\opengl_3d\opengl_3d\Form1.h(29): error C2059: syntax error : ')'
非常感谢有关此主题的任何帮助。我再次对此非常了解。
答案 0 :(得分:0)
“常量之前缺少某事”确实存在错误。仔细看看这条线,就在这里:
640 480
用空格隔开彼此相邻的数字是没有意义的。无论您是640+480
还是640*480
还是"640 480"
还是640, 480
,编译器都没有CLUE。
由于您有一个不匹配的括号,错误消息生成器猜测您可能意味着640); 480
...并生成“丢失)
”和“丢失;
”的消息