Kun*_*dan 1 c++ namespaces std turbo-c++
为什么namespace std用Turbo C ++ / Borland C ++编写的程序不需要名称空间std 时必须在新的编译器中使用?
这适用于旧的编译器
#include <iostream.h>
int main () {
   cout << "Hello Programmers";
   return 0;
}
但是我们必须在新的编译器中编写以下给定的程序,而不是在上面的程序中编写,因为上述程序在新的编译器中不起作用。
#include <iostream>
using namespace std;
int main () {
   cout << "Hello Programmers";
   return 0;
}
这是因为turbo-c ++甚至在发布任何c ++标准之前就已发布,并且它们没有引入std名称空间。
此后从未更新过。
同样,使用该using namespace std;语句不是强制性的,而是劝阻。
代码应为:
#include <iostream>
int main () {
   std::cout << "Hello Programmers";
}
要么
#include <iostream>
int main () {
   using std::cout;    
   cout << "Hello Programmers";
}
这次,有关turbo-c ++的IMO问题也毫无用处。它已经过时了,并且不需要用现代c ++做任何事情。
如果您的教授/老师强迫您使用它1,请告诉他们他们做错了,并且不以任何方式教授c ++。
1)我知道这在印度学校很常见,但这只是不好的做法,没有合理的理由。
可能是他们希望您从头开始学习一些东西,因为turbo-c ++不支持诸如此类的容器std::vector。
但是我仍然认为这是错误的方法,因为手动内存管理是高级的东西,不应该用来使初学者感到困惑。
| 归档时间: | 
 | 
| 查看次数: | 98 次 | 
| 最近记录: |