我初学C++不知道为什么有些用#include<iostream>有些用#include<iostream.h>求大虾帮忙
我初学C++不知道为什么有些用#include<iostream>有些用#include<iostream.h>求大虾帮忙,最好给个详细的教程或解说.我想知道他们的区别和...
我初学C++不知道为什么有些用#include<iostream>有些用#include<iostream.h>求大虾帮忙,最好给个详细的教程或解说.我想知道他们的区别和应用。
展开
1个回答
展开全部
C++刚开始的时候用的都是<iostream.h>
这样写是与C语言一样的。也不用这一句using namespace std;
后来C++越来越庞大,导致我们编写的函数容易与C++本身的函数重名。所以设计了命名空间。
把C++的所有定义定义在namespace命名空间里。但是这样做会导致以前的代码不能用,慑于被激怒的程序员。C++的设计者们不得不重新设计一些头文件如iostream(内容与iostream.h基本一样),也就是说所以有没有带.h的头文件都放在了namespace中。所以你若写成#include<iostream>的时候必须加一句using namespace std; 这成为了C++的新标准,为了使新标准能仍旧包括C语言,把C语言的一些头文件如math.h去掉.h前加一个c,就成了cmath。它的内容与math.h也基本上是一样的。
但是有一个头文件比较特殊:string,它与string.h的内容不是一样的。真正与string.h内容差不多的应该是cstring,所以string是C++新设计的一个类。
这样写是与C语言一样的。也不用这一句using namespace std;
后来C++越来越庞大,导致我们编写的函数容易与C++本身的函数重名。所以设计了命名空间。
把C++的所有定义定义在namespace命名空间里。但是这样做会导致以前的代码不能用,慑于被激怒的程序员。C++的设计者们不得不重新设计一些头文件如iostream(内容与iostream.h基本一样),也就是说所以有没有带.h的头文件都放在了namespace中。所以你若写成#include<iostream>的时候必须加一句using namespace std; 这成为了C++的新标准,为了使新标准能仍旧包括C语言,把C语言的一些头文件如math.h去掉.h前加一个c,就成了cmath。它的内容与math.h也基本上是一样的。
但是有一个头文件比较特殊:string,它与string.h的内容不是一样的。真正与string.h内容差不多的应该是cstring,所以string是C++新设计的一个类。
更多追问追答
追问
听说C++不能用 void main() 但是有的确实用了,而且没错,这是为什么?
#include
#include
class Sample
{
public:
int x,y;
Sample(){x=y=0;}
Sample(int a,int b){x=a;y=b;}
void disp()
{
cout<<"x="<<x<<",y="<<y<<endl;
}
};
void main()
{
Sample s1(2,1);
s1.disp();
}
追答
C++标准说的是int main
可是现在几乎没有一个编译器完全支持标准。
写成void main行不行还得看你用的是哪种编译器。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询