iostream.h 與 iostream

http://www.devx.com/tips/Tip/14447

寫法一:
#include <iostream.h>
寫法二:
#include <iostream>
using namespace std;

上面兩種方式,都可以在VC6.0編譯通過,但是兩者具體有什麼區別?還是沒有區別,只是寫法不一樣而以,我查了很久,有很多描述,但是還是沒有一個清晰的概念。

下面這段文字是我覺得描述的比較清楚的:

<iostream.h> or <iostream>?
Although the <iostream.h> library was deprecated for several years, many C++ users still use it in new code instead of using the newer, standard compliant <iostream> library. What are the differences between the two? First, the .h notation of standard header files was deprecated more than 5 years ago. Using deprecated features in new code is never a good idea. In terms of functionality, <iostream> contains a set of templatized I/O classes which support both narrow and wide characters. By contrast, <iostream.h> classes are confined to char exclusively. Third, the C++ standard specification of iostream’s interface was changed in many subtle aspects. Consequently, the interfaces and implementation of <iostream> differ from <iostream.h>. Finally, <iostream> components are declared in namespace std whereas <iostream.h> components are declared in the global scope. Because of these substantial differences, you cannot mix the two libraries in one program. As a rule, use <iostream> in new code and stick to <iostream.h> in legacy code that is incompatible with the new <iostream> library.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章