【TC命名空间定义介绍】:
TC命名空间概念:命名空间就相当于一个名称,命名空间里面包含的是函数定义和全局变量的定义,如果在不同名称的命名空间中有相同的函数名,则表示的是不同的含义,还有就是多份源代码可以使用一个命名空间,但是同一个命名空间中,不能有相同的全局变量名和函数名.
命名空间语句的定义格式: 空间空间 我的程序
空间结束
下面通过例子说明,如下:
空间 我的程序 //这条语句就是定义了一个我的程序的命名空间,在这个命名空间中的定义的所有的函数都需要通过这个命名空间名来访问 比如: 空间 我的程序 //定义一个命名空间 功能 整型 测试()
//定义一个名为测试,返回类型为int的函数 辅助.消息框("调用测试函数成功!") 返回 0 功能结束
功能 整型 开始_点击() //定义一个名为测试,返回类型为int的函数 我的程序.测试() 返回 0 功能结束 空间结束
当我们在访问这个命名空间定义的函数时需要这样访问:我的程序.测试()
当我们在两个命名空间中各自定义了一个函数,虽然他们使用了相同的函数名时,但表示不同的含义: 比如:
空间 我的程序A
//定义一个命名空间 功能 整型 测试A()
//定义一个名为测试A,返回类型为int的函数 辅助.消息框("这是测试A") //调用系统支持的辅助空间里的消息框函数 返回 0 功能结束 空间结束
空间 我的程序B
//定义一个命名空间 功能 整型 测试B()
//定义一个名为测试B,返回类型为int的函数 辅助.消息框("这是测试B") //调用系统支持的辅助空间里的消息框函数 返回 0 功能结束 空间结束 当我们访问他们时:
#include "测试A.t" //因为我们需要访问我的程序A空间里的测试A函数.所以需要用#include语句包含它所在的源代码 #include "测试B.t" //如果是调用系统支持的空间里的API,则不用使用#include语句 空间 我的程序 功能 整型 开始_点击() 我的程序A.测试A()
我的程序B.测试B() 返回 0 功能结束 空间结束
执行这段代码可以看出我们会弹出两个对话框一个是显示"这是测试A",一个是显示"这是测试B".
不可以在不同的源文件中使用同一个命名空间:
空间 我的程序A
//定义一个命名空间 功能 整型 测试A()
//定义一个名为测试A,返回类型为整型的函数 辅助.消息框("这个是测试A")
//调用系统支持的辅助空间里的消息框函数 返回 0 功能结束 空间结束
空间 我的程序A
//定义一个命名空间 功能 整型 测试B()
//定义一个名为测试B,返回类型为整型的函数 辅助.消息框("这个是测试B") //调用系统支持的辅助空间里的消息框函数 返回 0 功能结束 空间结束 //测试.txt #include
"测试A.t"
#include
"测试B.t" 空间 我的程序 功能 整型 开始_点击() 我的程序A.测试A()
我的程序A.测试B() 返回 0 功能结束 空间结束 //把以上的源文件编译不通过.
//然后我们不能在同一命名空间定义相同的函数名 空间 我的程序 功能 整型 开始_点击() 返回 0 功能结束
功能 整型 测试A() 辅助.消息框("测试A") 返回 0 功能结束
功能 整型 测试A()
辅助.消息框("测试B")
//编译这里会出错,在testsp中定义了相同的函数名 返回 0 功能结束 空间结束 把上面源代码放到源文件里面去编译,是无法编译通过的.
|