读书笔记之 -->"命名空间"
来源:互联网 发布:java获取list第一个值 编辑:程序博客网 时间:2024/06/02 13:03
C#程序中,每提及一个“名称”,编译器就要对这个“名称”进行“决议(resolve)”;简言之,就是要让
这个“名称”可见(visible);
举例说明一下:
Console.WriteLine("Hello ,EdgarSun!");
此时编译器将无法对Console这一名称进行“决议”;using指令提供了一种解决方法,如using System;
便是告诉编译器到System命名空间中查找无法决议的“名称”;另一种做法是明确(全饰名称full qualified
name)告诉编译器到何处寻找这个“名称”,System.Console.WriteLine("Hello,EdgarSun!");
举一个简单的命名空间的例子:
namespace N1
{
public class A{…} //N1.A
}
namespace N2
{
public class A{…} //N2.A
}
类A定义于各自的命名空间(namespace),现在类A对整个程序来说不再是可见的了。而如若我们在程序
中同时“开启”(曝光expose)两个命名空间,那么unqulified name A将会导致编译错误。此时必须使用
“全饰名称”,如N2.A a;
另外,N1和N2可以相同,编译器认为我们想在原先存在的命名空间中加入新声明(declare);
还有一种方法是使用别名(alias);
namespace N3
{
using N1;
using N2;
using A1 = N1.A;
using A2 = N2.A;
class B
{
A1 a1;
A2 a2;
}
}
再补充一点,别名(alias)仅在当前的命名空间中有效。
- 读书笔记之 -->"命名空间"
- 《C++Primer》读书笔记--命名空间
- 命名空间之全名命名空间
- XML之命名空间
- C++之命名空间
- C++之命名空间
- C++之命名空间
- C++ 之 命名空间
- C++之命名空间
- XAML之命名空间
- PHP之命名空间
- C++之命名空间
- JavaScript之命名空间
- C++之命名空间
- C++之命名空间
- C++之命名空间
- 关键字之命名空间
- ROS之命名空间
- C++多态性:虚函数的调用原理
- 时空数据模型简介
- 介绍一篇关于session的好文章,写的很详细(jsp-servlet 技术)
- 喜欢周采诗
- 成为“摇滚巨星”级程序员的十大方法
- 读书笔记之 -->"命名空间"
- debug常用的命令
- 自己需要改掉的不好习惯
- c语言与汇编的混合编程代码
- Ajax: A New Approach to Web Applications
- XSLT轻松入门第二章:XSLT的实例
- [转贴]WebWork 2.2部分新特性介绍
- 名字在编译时识别
- Ajax简介