在C++中是否存在与访问修饰符区域等效的C#

Ada*_*lor 3 c# access-modifiers

可以在C++中使用以下结构声明变量

private:
public:
protected:
    float bla1;
    float bla2;
    float bla3;
Run Code Online (Sandbox Code Playgroud)

C#中有等价物吗?不得不重复自己似乎相当乏味;

protected float bla1;
protected float bla2;
protected float bla3;
Run Code Online (Sandbox Code Playgroud)

Jon*_*eet 9

不可以.每个声明都指定了访问权限.

这样做的好处是方法在源文件中的位置对行为没有影响.这意味着您可以移动方法和属性(例如,将相关的方法聚集在一起)而不受惩罚.对于字段来说,情况也是如此 - 可以使字段的声明顺序很重要.不可否认,最好不要首先这样做......


Meh*_*ari 8

不,没有这样的事情.实际上,它的设计就是为了让代码更具可读性.这适用于C#和Java.


Ken*_*art 7

值得注意的是,如果您有多个相同类型的成员,则可以将它们声明为:

protected float bla1, bla2, bla3;
Run Code Online (Sandbox Code Playgroud)