cout<<endl; //使用头文件,你就不需要输入using std;了,因为在开头声明过了 }
使用std名字空间
cout和endl都是定义在命名空间std里面的,正常情况下调用这两个函数应该用std::cout,std::endl;加了那两句声明之后,使用cout和endl也能执行一样的操作,省去了每次都指定命名空间的麻烦。
using std :: 是命名空间的一种用法;你可以直接写using std::cout<<"dasdasd"<<endl;就可以了 你也可以用 cout<<"dda"<<endl;但开头 就必须有 #include <iostream> using namspace std:
用using namespace std;的话就是std这个命名空间(namespace)里面的所有都可以用了,比如cin,cout,endl等等,用using std::cout;的话就只能使用cout而不能用cin和endl。如果要用的话需要再用using std::cin;和using std::endl;初学者都要用上面的using namespace std;这样很省事,而水平高了之后...
呵呵,要么就导入一次 using namespace std;不要重复导入。你导入了using namespace std;后又导入 using std::string;using std::getline;就是重复了
,所以上面两种写法的cout语句都在using的作用范围内,所以结果都一样。using很多时候是会放在文件头的,这不是因为放在其他地方不行,而是一般这样写比较清楚,看程序的人可以在一开始就知道用的是什么命名空间或对象,也不会担心在中间发生变化。当然也不是说写在中间就不行,只要结构清晰就可以了。
一个是using声明。using声明只导入指定的名称,如果该名称与局部名称发生冲突,编译器会报错。而using指令导入整个命名空间中的所有成员的名称,如果其中有名称与局部名称发生冲突,则编译器并不会发出任何警告信息,而只是用局部名去自动覆盖命名空间中的同名成员。所以一般来说声明会更安全一点。
usingstd::cout;usingstd::endl; 这种就是只单独声明命名空间里面的某个名字,命名空间里面其他的东西是无法直接使用的,此时我们只能使用cout和endl这两个。 using的第三种使用形式是: classparent{protected:intm;};classchild:publicparent{public:usingparent::m;};intmain(){childc;c.m=2;return0;} ...