我现在已经使用Turbo C ++ 1年了,事情是......我知道它已经非常老了,但现在我已经习惯了它的语法。你能建议一个(更好的)IDE没有显示任何错误使用turbo C ++代码?
我尝试过Visual C ++和codeblocks,甚至试过(非常疯狂)一个eclipse CDK包。但是,所有这些都显示正常程序的错误,如:
#include<iostream.h>
void main()
{cout<<"hello";}
答案 0 :(得分:4)
Turbo C ++如此陈旧的问题在于它比现代编译器更不符合要求。在很久以前,C ++编译器的变化很大;支持不同的功能,不同的语法,并在他们的C ++实现中有严重的错误。那时编写可移植的C ++很困难。随着编译器的成熟,实现通用C ++标准越来越好,事情在过去的15年中有了很大的改进。
现代编译器的主要好处可能是它们更符合要求;他们不支持Turbo C ++支持的相同错误的C ++方言。
你应该简单地弄清楚Turbo C ++的方言区域是不正确的,而不是要求现代的C ++编译器没有使现代编译器成为可取的主要特性。无论如何,这可能是一项很好的锻炼; C ++程序员从他们的编译器中学习了很多C ++,因此当编译器出错时他们会学习错误的东西。使用不同的编译器有助于解决这些误解并提高一个人对C ++的了解。做出调整应该不会太难。
所以,就C ++的权威ISO规范而言,你发布的简单程序有什么问题:标准C ++标题后面没有'.h'后缀,所以你必须使用#include <iostream.h>
而不是#include <iostream>
。 {1}}。这些标准头文件放在命名空间中,因此为了访问cout
,您必须在std
命名空间内访问它:而不是cout<<"hello";
,您应该编写std::cout << "Hello\n";
。最后main
需要返回int
而不是void
,因此您的整个程序可能如下所示:
#include<iostream>
int main() {
std::cout << "Hello\n";
}
答案 1 :(得分:2)
如果您已经习惯了这种语法并不重要。如果要编写C ++代码,则必须使用C ++语法。就像你不能在德国的道路左侧突然开车一样,因为你习惯了在英格兰那边。如果你想在德国开车,你必须遵守规则。如果你没有,你会崩溃。
使用现代C ++编译器意味着您必须编写符合标准的C ++代码。
答案 2 :(得分:1)
这实际上不是一个普通的C ++程序。
一些<{1}} 始终返回main
而int
在技术上已无法使用多年(赞成<iostream.h>
,尽管许多编译器支持某些编译器时间长度。)
我没有尝试找到接受现有代码的GUI,而是尝试获取一本书并学习/查看更新的C ++(至少是C ++ 03),然后使用现代编译器(g ++或免费) Visual Studio一)建立您的标准代码。