cout和endl都是定义在命名空间std里面的,正常情况下调用这两个函数应该用std::cout,std::endl;加了那两句声明之后,使用cout和endl也能执行一样的操作,省去了每次都指定命名空间的麻烦。
1、using namespace std; 只需要放在程序最前面,用于限定如cin、cout等。 2、using std:: 使用时,也是放在程序最前面,如:using std::cin、using std::cout、using std::endl。 3、std:: std::cin、std::cout、std::endl,每次使用都要在前面加上std::。
cin >> i;//正确:cin和std::cin含义相同cout << i;//错误:没有对应的using声明,必须使用完整的名字return0; } 1 2 3 4 5 6 7 8 需要注意的是每个名字需要独立的using声明。例如: usingstd::cin;//必须每一个都有独立的using声明usingstd::cout;usingstd::endl;//写在同一行也需要独立声明 1 2 ...
using MyVector = std::vector<T>; int main() { MyVector<int> v{1, 2, 3}; for (auto x : v) { std::cout << x << " "; } std::cout << std::endl; return 0; } 在这个例子中,我们使用using MyVector = std::vector<T>语句定义了一个名为MyVector的模板类型别名,从而可以使用My...
using std::cout;using std::endl; int f(int n) { if(n==2) return 1; if(n==3) return 2; if(n==4) return 4; if(n>4) { if(n%4==1||n%4==3) return f(n-1)+f(n-2); if(n%4==0||n%4==2) return f(n-1)+f(n-2)+f(n-3); ...
一个是using声明。using声明只导入指定的名称,如果该名称与局部名称发生冲突,编译器会报错。而using指令导入整个命名空间中的所有成员的名称,如果其中有名称与局部名称发生冲突,则编译器并不会发出任何警告信息,而只是用局部名去自动覆盖命名空间中的同名成员。所以一般来说声明会更安全一点。
using std::cout 使用标准输出(流)如果你没有使用头文件,无论什么函数都需要用using std::xxxxxx 你可以在开头(使用头文件)include <iostream> //输入输出流 using namespace std; //使用标准空间 main(){ ..cout<<endl; //使用头文件,你就不需要输入using std;了,因为在开头声明过了 } ...
typedef std::shared_ptr<int> FinalLightStatusPtr; int main() { FinalLightStatusPtr ptr(new int(5)); std::cout << *ptr << std::endl; return 0; } 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 优点: 兼容各种C++标准,支持在较旧的代码中使用。
using std::cout (using宣告) using namespace std (using 指示詞) /clr下列範例示範如何使用在 .NET Framework 基底類別程式庫 命名空間 中使用名稱,而不用 命名空間名稱 作為明確限定詞。複製 // using_directive.cpp // compile with: /c /clr using namespace System::Reflection; [assembly:AssemblyDes...
iostream中的cout、endl实际上是stdcout、std:endl;那么前面的std可以将其作为一个姓氏,后面跟的是名字。名称空间可以理解为这些函数的姓氏,那么在文件起始位置,加入名称空间,那么默认在这些函数前面都加上了std,也就不需要再重复添加了。 using namespace std;的潜在问题 using namespace std;使得std名称空间中的所...