c#单元(文件范围)命名空间
本文关键字:命名空间 范围 文件 单元 | 更新日期: 2023-09-27 18:02:26
我阅读了c#规范并在谷歌上搜索了一下,但一无所获。
我99%肯定c#中没有单元命名空间指令这样的功能,但问题是:为什么?是出于习惯还是技术上的原因?
这很方便,特别是当我们的大多数文件由单个命名空间组成时。是否有任何功能要求或建议?也许我们可以做一个?
// with unit namespace
namespace Foo;
class Bar { ... } // Class Bar declared inside Foo Namespace
struct Baz { ... } // Baz is inside Foo too
// without
namespace Foo {
class Bar { ... }
class Baz { ... }
}
或者也许有一种方法可以重新导出全局符号?我的意思是,首先你声明global
命名空间中的所有东西,然后在选定的命名空间中发布公共符号?
c#代码的深度嵌套是我最讨厌的事情之一。
我真的很喜欢c++的能力,它可以转发声明甚至嵌套类,然后定义它们,甚至不需要额外的嵌套层。
感谢您的宝贵时间。
逻辑上,名称空间是块的,就像类一样,只是它们只能包含类型,而不能包含成员。
对这种块使用特殊的语法是毫无意义的,而且会令人困惑。