CodeBlocks编译以下程序报错
class Time
{
public:
Time();
Time(int,int,int);
void show_time();
private:
int hour;
int minute;
int sec;
};
Time::Time()
{
hour=0;
minute=0;
sec=0;
}
Time::Time(int h,int m,int s) {
hour=h;
minute=m;
sec=s;
}
void Time::show_time()
{
cout<<"Time:"<<hour<<":"<<minute<<":"<<sec<<endl;
}
int main()
{
Time t1;
t1.show_time();
Time t2={12,10,30};
t2.show_time();
return 0;
}
错误提示:
||=== Build: Debug in test1-ten (compiler: GNU GCC Compiler) ===|
D:\CJJP\test1\test1-ten\main.cpp||In function 'int main()':|
D:\CJJP\test1\test1-ten\main.cpp|22|error: in C++98 't2' must be initialized by constructor, not by '{...}'|
||=== Build failed: 1 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|解决办法:
选择设置-编译器

勾选C++11标准

确认后编译运行 ,ok了 错误解决
文章描述了一位用户在CodeBlocks中尝试编译C++程序时遇到的错误,该错误源于使用了不适用于C++98标准的初始化方式。通过将编译器设置切换到C++11标准,问题得到解决,程序可以正常编译和运行。
4万+

被折叠的 条评论
为什么被折叠?



