从Turbo C ++(旧)切换到更新的类似编译器

时间:2013-01-23 17:05:08

标签: c++ ide

我现在已经使用Turbo C ++ 1年了,事情是......我知道它已经非常老了,但现在我已经习惯了它的语法。你能建议一个(更好的)IDE没有显示任何错误使用turbo C ++代码?  我尝试过Visual C ++和codeblocks,甚至试过(非常疯狂)一个eclipse CDK包。但是,所有这些都显示正常程序的错误,如:  #include<iostream.h> void main() {cout<<"hello";}

3 个答案:

答案 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}} 始终返回mainint在技术上已无法使用多年(赞成<iostream.h>,尽管许多编译器支持某些编译器时间长度。)

我没有尝试找到接受现有代码的GUI,而是尝试获取一本书并学习/查看更新的C ++(至少是C ++ 03),然后使用现代编译器(g ++或免费) Visual Studio一)建立您的标准代码。