C++ 实例未在主函数中声明
我在创建实例时遇到问题。这是一段非常简单的代码,并且总是可以正常工作,但是当我开始使用C++11的MinGW编译器时,出现了这个错误 main.cpp:16:35:错误:“myObjekt”未在此作用域中声明 main.cpp:16:50:错误:应为类型说明符main.cpp:16:50:错误: 期望“;”main.cpp:20:12:错误:给定了类型“”参数 要“删除”,应为指针C++ 实例未在主函数中声明,c++,c++11,mingw,C++,C++11,Mingw,我在创建实例时遇到问题。这是一段非常简单的代码,并且总是可以正常工作,但是当我开始使用C++11的MinGW编译器时,出现了这个错误 main.cpp:16:35:错误:“myObjekt”未在此作用域中声明 main.cpp:16:50:错误:应为类型说明符main.cpp:16:50:错误: 期望“;”main.cpp:20:12:错误:给定了类型“”参数 要“删除”,应为指针 #include <iostream> #include "Objekt.h"
#include <iostream>
#include "Objekt.h"
int main(int argc, char** argv){
std::cout << "Hi!" << std::endl;
Colonisation::Objekt::Objekt* myObjekt = new Colonisation::Objekt::Objekt(5,4);
std::cout << myObjekt->getXPosition() << std::endl;
std::cout << myObjekt->getYPosition() << std::endl;
delete myObjekt;
return 0;
}
#包括
#包括“Objekt.h”
int main(int argc,字符**argv){
std::cout因此,以下各项应按预期工作:
int main(int argc, char** argv){
std::cout << "Hi!" << std::endl;
Colonisation::Objekt* myObjekt = new Colonisation::Objekt(5,4);
std::cout << myObjekt->getXPosition() << std::endl;
std::cout << myObjekt->getYPosition() << std::endl;
delete myObjekt;
return 0;
}
int main(int argc,char**argv){
std::cout错误消息提到第16行和第20行,但您的代码只有15行。您确定这是殖民::Objekt::Objekt
,而不仅仅是殖民::Objekt
?@MartinKravec(回复您对KerrekSB的回复)在这种情况下Kerrek是正确的,应该是殖民::Objekt
。无需(事实上是一个错误)明确提到构造函数(构造函数总是与类同名)。@MartinKravec(回复您对我第一条评论的回复)。如果错误消息中的行号与您提供的代码不匹配,并且代码中没有解释错误所指行的注释,则通常很难让任何人回答您的问题。@MartinKravec:…和KerrekSB正确地指出重复该类型是错误的。