0

有没有办法使用命名空间在 C# 中“伪造”头文件?据我所知,没有办法获得他们在 C++ 中提供的预处理;但我更喜欢它的组织方面,而不是在命名空间中包装类并依靠 IDE 来告诉.

例如(注意不正确的语法)假设

ns1.cs
iamaclass.cs
iamanotherclass.cs
yaclass.cs
yaaclass.cs

其中 ns1.cs 的内容是:

namespace ns1
{
   extern class iamaclass;
   extern class iamanotherclass;

   namespace ns1-nested
   {
      extern class yaclass
      extern class yaaclass
   }
}
4

2 回答 2

2

如果您使项目的目录结构与命名空间结构相匹配,那么这对获得组织收益大有帮助。现在您的项目文件和相关的目录结构包含在您的“头”文件中提出的所有信息。

于 2011-01-20T16:05:15.093 回答
0

在 C# 中没有办法做到这一点。你能得到的最接近的方法是制作你的 ns1.cs 文件并用 填充它partial class ....,但这真的没有意义。那时你应该只写一个文档,因为你不会真正得到任何编译器的帮助来强制执行结构。

我会说这是“忘记你是如何在 C++ 中做到的”的情况。通常找出命名空间中的内容并不重要,但更重要的是弄清楚某个类在哪个命名空间中,C# 的组织会完美地向您展示这一点。

只是最后一件事:您是否有不想依赖 IDE 的实际原因,还是只是挑剔?可以依靠 IDE 的帮助进行大量开发。

于 2011-01-20T16:04:28.477 回答