C++命名空间
2016-02-16 12:34
323 查看
C++命名空间:实际上就是一个由程序设计者命名的内存区域,程序设计者可以根据需要指定一些有名字的空间域,把一些全局实体分别放在各个命名空间中,从而与其他全局实体分隔开来。
例如: namespace name //指定命名空间为name
接下来我们直接上代码:
1、
2、
例如: namespace name //指定命名空间为name
接下来我们直接上代码:
1、
#include <iostream> int a = 30 ; //声明一个HotDog名字空间 namespace HotDog { int a = 20 ; namespace HotPig { int a = 10 ; }; void say_hello(void); }; //实现say_hello()方法 void HotDog::say_hello(void) { printf("hello hotdog\n"); } int main(void) { /* 使用::新运算符,用于解决名字冲突 */ printf("a:%d \n" , HotDog::HotPig::a); printf("a:%d \n" , HotDog::a); printf("a:%d \n" , ::a); HotDog::say_hello(); return 0 ; }</span>
2、
#include <iostream> int a = 30 ; namespace HotDog { typedef unsigned int U32 ; int a = 20 ; namespace HotPig { int a = 10 ; }; U32 say_hello(U32 a); }; HotDog::U32 HotDog::say_hello(HotDog::U32 a) { printf("hello hotdog a:%d \n" , a); } int main(void) { printf("a:%d \n" , HotDog::HotPig::a); printf("a:%d \n" , HotDog::a); printf("a:%d \n" , ::a); //HotDog::say_hello(); HotDog::U32 a = 100 ; HotDog::say_hello(a); return 0 ; }</span>3、
#include <iostream> int c = 30 ; namespace myspace { int a ; int b ; int c = 20 ; void say_hello(void) { printf("hello world \n"); } }; using namespace myspace ; int main(void) { //这里的::相当于C语言结构体访问的.和-> printf("c : %d \n" ,myspace::c); printf("c : %d \n" , ::c); //·ÃÎÊsay_hello·½·¨ myspace::say_hello(); return 0 ; }
相关文章推荐
- c++11 chrono应用 - 一个超时timer的实现
- C语言编写简单的定时关机程序
- C++多重继承
- C语言实现的猜拳游戏代码分享
- c语言笔试题总结1
- 如何解决C/C++中stack overflow问题
- C++虚基类
- 凸包 极角序 模板
- C++继承中构造函数、析构函数调用顺序及虚析构函数
- 第十二章内存管理
- C语言完美实现动态数组代码分享
- C++ 为什么设置基类的析构函数为虚函数
- C语言解决百钱买百鸡问题
- C++ string TBD
- C语言-08-预处理器
- C++ 笔记
- C语言打印杨辉三角示例汇总
- c语言入门之项目1.3——指针变量
- C语言+win32api写窗体应用程序
- C++Primer第5版学习笔记(四)