“标准C++代码”这个词见很多,但是怎样才算是标准的,难道还有不标准的C++代码吗?

来源:百度知道 编辑:UC知道 时间:2024/06/06 07:35:39
好像C++语法都一样啊,如果还分标准和不标准,那么怎样才算标准?
希望高手指点一下,最好能举些例子,谢谢~

1998年国际标准组织(ISO)颁布了C++程序设计语言的国际标准ISO/IEC 1488-1998。C++是具有国际标准的编程语言,通常称作ANSI/ISO C++。1998年是C++标准委员会成立的第一年,以后每5年视实际需要更新一次标准,下一次标准更新将是在2009年,目前我们一般称该标准C++0x。遗憾的是,由于C++语言过于复杂,以及他经历了长年的演变,直到现在(2009年)只有Visual C++ 2010 CTP开发环境的编译器完全符合这个标准。

因为很多公司都在开发C++编译平台,比如微软公司的VC++,Borland公司的Turbo C/C++等等,他们除了应用标准的C++外,还自己开发C++库和函数什么的,而开发的这些东西当然只能用在他们自己的机器、编译器或系统上面,目的就是为了更多人的使用他们的产品,而他们自己开发的就不算是标准C++,标准C++是可以在任何机器和系统及编译器等上运行而不会出错的C++语言 (当然,你自己写错了除外 - -)

怎样算标准就去参照ISO/IEC 14882:1998标准(简称C++98标准)或更正版ISO/IEC 14882:2003。

比如Visual C++ 6.0中的不符合标准的用法:

for (int i = 0; i < 10; i++)
{
...
}
i++; // Visual C++ 6.0编译通过,但C++标准编译器应该编译出错:变量i未定义