今天看书时,有一句话深得我心,在学习c++时,最重要的事就是集中关注概念,不要迷失在语言的技术细节中。
命名空间在C/C++中,变量、函数和类都是大量存在的,这些变量、函数和类的名称都将作用于全局作用域中,可能会导致很多命名冲突。
使用命名空间的目的就是对标识符和名称进行本地化,以避免命名冲突或名字污染,namespace关键字的出现就是针对这种问题的。
注意:一个命名空间就定义了一个新的作用域,命名空间中的所有内容都局限于该命名空间中
命名空间格式:
namespace + 命名空间的名字 + {}。其中{}中即为命名空间的成员。
*命名空间中的内容,既可以定义变量,也可以定义函数
*命名空间可以嵌套
*同一个工程中允许存在多个相同名称的命名空间,编译器最后会合成同一个命名空间中
namespace L { int a; int b; int Add(int p, int q) { return c + d; } namespace L2 { int c; int d; int Sub(int p, int q) { return p - q; } } }
命名空间使用方式:
1.命名空间名称+作用域限定符
int main() { printf("%d",L::printf); return 0; }
2.使用using引入命名空间的成员
using N::b; int main() { printf("%dn", N::a); printf("%dn", b); return 0; }
3.使用using将命名空间引入
using namespce L; int main() { printf("%dn", a); printf("%dn", b); Add(10, 20); return 0; }输入和输出
c语言用scanf和printf输入输出,c++cin[标准输入]cout[标准输出],c语言需要stdio作头文件,c++需要包含头文件iostream以及std标准命名空间。
c++输入输出不需要%d,%f,%c,来增加数据格式控制。
cin是以遇到空格,tab或者换行符作为分隔符的
#includeusing namespace L; int main() { int a; // 输入 cin >> a; // 输出 cout << a; return 0; }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)