(一)引入namespace原因:

假如有很多跟人共同完成一项工程,工程中难免会有函数定义一样的名称,不可能一个一个的询问这个函数 你定义过了没有,所以引入namespace
 #include <stdio.h>
#include "person.h"
#include "dog.h" /*global namespace*/
/*把A::person放入global namespace,以后可以使用person来表示A::person*/
using namespace A;
using namespace C; int main(int argc,char ** argv)
{
/*local namespace*/
Person per;
Dog dog;
per.setName("zhangsan");
per.setAge();
per.printInfo(); dog.setName("lisi");
dog.setAge();
dog.printInfo(); A::printVersion();
C::printVersion();
return ;
}

main.cpp

 #include <stdio.h>
namespace A{ class Person{
private:
char *name;
int age;
char *work; public:
void setName(char *name);
int setAge(int Age);
void printInfo(void);
}; void printVersion(void);
}

person.h

 #include <iostream>
#include "person.h"
using namespace std; namespace A{
void Person::setName(char *name)
{
this->name = name;
}
int Person::setAge(int Age)
{
if(Age < || Age > )
{
this->age = ;
return -;
}
this->age = Age;
return ;
}
void Person::printInfo(void)
{
cout<<"nane = "<<name<<"age = "<<age<<"work = "<<work<<endl;
//intf("name = %s, age = %d, work = %s\n",name,age,work);
} void printVersion(void)
{
cout<<"Person V1, by luxiaoguo"<<endl;
//intf("Person V1, by luxiaoguo\n");
} }

person.cpp

 namespace C{

 class Dog{
private:
char *name;
int age;
char *work; public:
void setName(char *name);
int setAge(int age);
void printInfo(void);
}; void printVersion(void); }

dog.h

 #include <stdio.h>
#include "dog.h" namespace C{ void Dog::setName(char *name)
{
this->name = name;
}
int Dog::setAge(int Age)
{
if(Age < || Age > )
{
this->age = ;
return -;
}
this->age = Age;
return ;
}
void Dog::printInfo(void)
{
printf("name = %s, age = %d, work = %s\n",name,age,work);
} void printVersion(void)
{
printf("Dog V1, by luxiaoguo\n");
}
}

dog.cpp

003_linuxC++之_namespace使用的更多相关文章

  1. C++_知识点_namespace

    #include <iostream> #include <string> using namespace std; void name() { cout << & ...

  2. MyBatis入门3_mapper.xml优化(parameterType简写_NameSpace简写_sql片段_特殊字符处理)_动态SQL

    本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! 优化 1.起别名(一般不用,写全方便查看类出处) 以前 ...

  3. Demo中的IOC自定义实现

    在做练习的时候,小小项目,使用IOC控件觉得麻烦,使用工厂觉得不高大上啊,自己写个简陋的依赖注入IOC吧; 控制反转(IOC)是管理映射依赖的的,是依赖倒置(DIP)的实现方式; 依赖倒置(DIP)是 ...

  4. OpenStack集成Docker

    声明:绝对原创,欢迎转载,但请标明出处,谢谢! 最近在做openstack与Docker的集成工作,走了不少弯路,遇到不少问题,不过最终搭建成功了.现在将过程分享出来,以供参考. 一.环境介绍 1.软 ...

  5. 嵌入式jetty的HTTP实现

    2    嵌入式jetty的HTTP实现 布拉君君 2.1 简单HTTP实现 2.1.1 HTTP SERVER端实现 2.1.1.1 HTTP SERVER端实现概述 在代码中嵌入一个Jetty s ...

  6. JAVA调用WebService总结

    一.wximport自动生成代码 wsimport -keep -p com.test.client http://localhost:8080/test/services/TestService?w ...

  7. 四、分离T4引擎

         在前几篇文章中,我使用大量的篇幅来介绍T4在VisualStudio中如何使用.虽然在一定程度上可以提高我们的工作效率,但并没有实质上的改变.不过从另一方面来说,我们确实了解到了T4的强大. ...

  8. MVC3路由设置访问后缀 html jsp

     C# Code  12345678910111213141516171819202122232425262728293031323334353637383940414243444546   publ ...

  9. 【关于微软的上一代模板引擎 T4引擎】

    导语:国内有名的动软代码生成器用的就是T4引擎......可以自己下载下来用用,批量生成固定模式的代码文件,十分有用........... 示例代码:示例代码__你必须懂的T4模板:浅入深出.rar ...

随机推荐

  1. Django查找数据库objects.filter() 排序order_by Q()与或非 F()属性之间比较 聚合函数的用法

    条件选取QuerySet的时候,filter表示=参数可以写查询条件,exclude表示!=,querySet.distinct() 去重复(除了get返回值都是QuerySet,可以继续调用所有函数 ...

  2. Scratch 3.0,新在哪里?

    大家期待已久的Scratch 3.0,已经上线一段时间了. 学生们可轻松通过连接WeDo2.0和EV3机器人 进行scratch编程学习啦! 或许有些朋友还不太了解Scratch,没关系,小乐今天就为 ...

  3. pyodbc报错pyodbc.InterfaceError

    connection = pyodbc.connect(r'Driver={SQL Server Native Client 11.0};Server=...;Database=...;Trusted ...

  4. QT实现两条贪吃蛇

    Snake.pro文件 1 #------------------------------------------------- 2 # 3 # Project created by QtCreato ...

  5. linux安装tmux分屏插件

    linuxtmux分屏 一.安装tmux 二.基本使用 三.鼠标操作 一.安装tmux yum install -y tmux TMUX2版本以下 二.基本使用 使用tmux一般使用命令和快捷键来操作 ...

  6. 【翻译】--19C Oracle 安装指导

    18C新功能     1.简化的基于镜像的Oracle数据库安装     从18C开始,Oracle可以作为镜像文件来下载和安装,必须解压缩镜像文件到ORACLE_HOME目录,然后执行runInst ...

  7. C#的预处理指令

  8. 关于在window8上使用ssh命令的记录

    1.开启虚拟机以及git bash窗口,准备连接 2.在虚拟机中输入ifconfig -a查看虚拟机ip 从图中找到ip为 : inet 地址:192.168.78.133 3.输入命令: ssh r ...

  9. hibernate使用注解生成表,有时无法生成数据表的原因

    待生成表中有字段“desc”或“descripe”等和hibernate关键字,导致和hibernate冲突

  10. Django drf:cbv(class base view)源码分析

    cbv是基于类的视图 # 首先要在路由层配置: # 找到类绑定方法as_view # 点开dispatch的方法 # http_method_names其实就是方法的列表 整个流程: 1.写一个基于类 ...