首页 新闻 搜索 专区 学院

C#命名空间和类名重名

0
悬赏园豆:10 [已关闭问题] 关闭于 2013-07-15 10:41

类一般分为结构类(或者结构体),模块入口(XXCenter, XXManager)。

 

而和命名空间名称冲突的总是结构类,因为我结构类都用最简单命名(Point, Element)。我看C#的System.Draw模块,那假设他用System.Bitmap, System.Graphics不就冲突了吗,绘画方面的单词比较多,而对于一些可选单词比较少的模块,很容易就重名冲突了。

 

应该都遇到过重名的情况,是绞尽脑汁想另一个单词,还是有更好的方法?

HONT的主页 HONT | 初学一级 | 园豆:4
提问于:2013-07-15 09:33
< >
分享
所有回答(1)
0

可以重名的,没必要为这个纠结。假设某个类同时存在于命名空间A和B中,那么一般情况下不会同时usingA和B,即使同时云感到了,可以使用别名:

using A = Company.Project.Module.A;
using B = Company.Antoher.XXX.B;

A.SomeClass a = new A.SomeClass();

唯一要注意的是“类名不要和命名空间名字一样”。其他无所谓的。

水牛刀刀 | 园豆:6350 (大侠五级) | 2013-07-15 10:28

你的说法怎么前后矛盾?

你开头说,可以重名。

结尾又强调,类名和命名空间名字一样。

 

你是来搞笑的吗?

支持(0) 反对(0) ChuckLu | 园豆:514 (小虾三级) | 2015-05-06 14:38

@ChuckLu: 因为这个人一开始问的是“命名空间之间的重名问题”,我开始回答了“可以重名”。后来他应该是编辑过问题,问了“类名和命名空间重名问题”,我刚好之前的答案也提到了“类名不要和命名空间名字一样”,也就是说不要这么做。我这么说你明白了吗?

支持(0) 反对(0) 水牛刀刀 | 园豆:6350 (大侠五级) | 2015-05-21 11:14

好方法。

支持(0) 反对(0) LCTR | 园豆:202 (菜鸟二级) | 2020-03-12 11:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册