这可能与以下结构的C++是否有一个C#相当于访问修饰符地区,在C++
private:
public:
protected:
float bla1;
float bla2;
float bla3;
有没有在C#中的等价声明变量?似乎相当乏味,不得不重复自己;
protected float bla1;
protected float bla2;
protected float bla3;
这可能与以下结构的C++是否有一个C#相当于访问修饰符地区,在C++
private:
public:
protected:
float bla1;
float bla2;
float bla3;
有没有在C#中的等价声明变量?似乎相当乏味,不得不重复自己;
protected float bla1;
protected float bla2;
protected float bla3;
不,没有这样的事情。事实上,它的设计就是为了让代码更具可读性。这适用于C#和Java。
值得一提的是,如果你有相同类型的多个成员,可以声明为:
protected float bla1, bla2, bla3;
号的访问是在每个声明中指定。
这样做的好处是方法在源文件中的位置对行为没有影响。这意味着您可以移动方法和属性(例如将相关方法聚集在一起)而不受惩罚。同样不是完全是字段的真实性 - 可以使字段的声明顺序很重要。无可否认,最好不要这样做...
不,在C#中(VB和F#)没有等效。
我个人很喜欢这种差异。我在一个非常大的C++代码库中工作,没有办法查看特定的方法并知道它是特定的可访问性。有些类已经变得非常大,以至于需要大量的页面滚动才能看到修改器。
一些编码人员可能认为这并不坏,但考虑一下当人们开始在#if defs中混合并在这些#if中添加修饰符时会发生什么。它使得在代码审查过程中确定访问修饰符是非平凡的操作。
这是一个小的打字牺牲,以增加内联修饰符,但在长期可读性方面值得。
不错的一点。此功能在合并不同版本的文件以检入时会有很大帮助。 – 2009-01-10 15:29:31