.NET C#的跨平台应用开发有哪些优势?
- 内容介绍
- 文章标签
- 相关推荐
本文共计6745个文字,预计阅读时间需要27分钟。
0.+ 文章目的 —— 面向C
0. 文章目的面向C#新学者,介绍命名空间(namespace)的概念以及C#中的命名空间的相关内容
1. 阅读基础理解C与C#语言的基础语法
2. 名称冲突与命名空间 2.1 一个生活例子假设猫猫头在北京有一个叫AAA的朋友,在上海有两个叫AAA的朋友,上海的两个AAA一个喜欢咸粽子,一个喜欢甜粽子。有一天猫猫找朋友玩,朋友问道:
“AAA最近过得怎么样”,
然而猫猫头有三个叫AAA的朋友,因此猫猫头不确定朋友问的是哪个AAA,于是朋友改问:
“上海的那个AAA最近过得怎么样”
精确了一点,但这还不够,因为猫猫头在上海认识两个叫AAA的朋友,于是朋友再次改问:
“上海的那个喜欢咸粽子的AAA最近过得怎么样。
到这里,猫猫头就确定了朋友问的是哪个小明。也就是说,通过地域+喜好+姓名,猫猫头可以确定朋友指的具体的人。
这个例子体现的就是命名空间的实质:限定性修饰。
2.2 从C语言的缺陷到命名空间(1)函数命名冲突
在谈论什么是命名空间之前,我们先来看一看C语言中存在的一些问题。假设你和你的小伙伴同时开发一个C程序,并且你们很巧地定义了两个函数名相同的函数:
void Init() { }
void Init() { }
假设这两个函数做的事完全不同(一个用来初始化控制台,一个用来初始化打印机)而无法合并,那么显然此时需要用一个办法来区分两个函数。
本文共计6745个文字,预计阅读时间需要27分钟。
0.+ 文章目的 —— 面向C
0. 文章目的面向C#新学者,介绍命名空间(namespace)的概念以及C#中的命名空间的相关内容
1. 阅读基础理解C与C#语言的基础语法
2. 名称冲突与命名空间 2.1 一个生活例子假设猫猫头在北京有一个叫AAA的朋友,在上海有两个叫AAA的朋友,上海的两个AAA一个喜欢咸粽子,一个喜欢甜粽子。有一天猫猫找朋友玩,朋友问道:
“AAA最近过得怎么样”,
然而猫猫头有三个叫AAA的朋友,因此猫猫头不确定朋友问的是哪个AAA,于是朋友改问:
“上海的那个AAA最近过得怎么样”
精确了一点,但这还不够,因为猫猫头在上海认识两个叫AAA的朋友,于是朋友再次改问:
“上海的那个喜欢咸粽子的AAA最近过得怎么样。
到这里,猫猫头就确定了朋友问的是哪个小明。也就是说,通过地域+喜好+姓名,猫猫头可以确定朋友指的具体的人。
这个例子体现的就是命名空间的实质:限定性修饰。
2.2 从C语言的缺陷到命名空间(1)函数命名冲突
在谈论什么是命名空间之前,我们先来看一看C语言中存在的一些问题。假设你和你的小伙伴同时开发一个C程序,并且你们很巧地定义了两个函数名相同的函数:
void Init() { }
void Init() { }
假设这两个函数做的事完全不同(一个用来初始化控制台,一个用来初始化打印机)而无法合并,那么显然此时需要用一个办法来区分两个函数。

