“公共”和“私人”可见性修饰符的缩进[关闭]
Posted
技术标签:
【中文标题】“公共”和“私人”可见性修饰符的缩进[关闭]【英文标题】:Indentation of "public" and "private" visibility modifiers [closed] 【发布时间】:2011-02-10 17:18:58 【问题描述】:我通常像这样缩进 public:
和 private:
访问说明符:
class Foo()
private:
void Bar1()
public:
void Bar2()
然而,Xcode 似乎不喜欢这样,所以我觉得我做错了什么。缩进private:
和public:
的常见做法是什么?
【问题讨论】:
@BlackBear 我不知道该怎么称呼他们。 我认为(我不是 C++ 人)这些都是属性 从技术上讲,它们是“访问说明符”。 @Mike 好的,我会更改问题以反映这一点。 补充阅读:Stroustrup indentation style 【参考方案1】:“宗教”问题 :-) 我想你会得到很多不同的答案。
我说: 只要你始终如一,你喜欢哪个。
【讨论】:
【参考方案2】:Visual Studio 会这样做:
class Foo()
private:
void Bar1()
public:
void Bar2()
但我讨厌它。不过很多人都用。如果只有 C++ 像大多数语言一样支持特定于字段/方法的可见性修饰符就好了。
我个人喜欢用这个:
class Foo()
private:
void Bar1()
public:
void Bar2()
VS 通常会一直将其还原为缩进方案,所以我经常只是提交。
【讨论】:
缺点是,当你有嵌套类时,你缩进太远了:/你如何缩进标签? @Foo Bah:人们发明这些宽屏显示器是有原因的 :) 而且我不使用标签。 +1. 即使我讨厌 VS 对公共和私人的缩进 “如果只有 C++ 支持字段/方法特定的可见性修饰符”我不明白你的抱怨:没有什么能阻止你这样做:private: void Bar1()
有什么办法可以改变VS的公共和私有缩进?编辑:This is the SO question for that【参考方案3】:
就像标签:
class Foo()
private:
void Bar1()
public:
void Bar2()
【讨论】:
我同意,只是因为缩进和 80 列的行不能很好地混合 :) @Matthieu M:因为 80 列屏幕仍在使用中! @Martin: CLang 指导方针已经把 80 列逼到了我的喉咙;)我确实喜欢能够并排比较 2 块代码,所以我不喜欢无休止的行,无论是 80或 100 或其他什么,这需要一个限制。 @Martin:我使用的是 27" iMac :) 我通常同时打开 5-10 个文件,当我可以将每个窗口宽度保持在 80 个字符时,这让生活变得更加轻松。 【参考方案4】:如果你想遵循风格指南,我建议Google C++ Style Guide:
以公共、受保护和私人顺序排列的部分,每个都缩进一个空格。
【讨论】:
但请注意,您只遵循样式指南中与代码布局相关的部分,而不是那些任意限制您使用功能失调的语言子集的部分。以上是关于“公共”和“私人”可见性修饰符的缩进[关闭]的主要内容,如果未能解决你的问题,请参考以下文章