C++中是否存在public class或private class的相关语法?
C++中
public class写法的相关说明 C++标准语法原生不存在public class直接修饰类定义的写法,该写法属于Java、C#的语法,你看到的代码出现这种写法只有两种可能:
- 代码为非可编译的演示伪代码/笔误:博主把Java/C#的书写习惯带到了C代码演示中,实际该写法无法通过C编译器的语法校验。C++类的访问控制符需要声明在类内部,类本身的默认访问权限为private,如果要定义公开成员,需要在类的花括号内部添加
public:标记。 - 项目自定义了语法兼容宏:如果这段代码确实可正常编译运行,说明项目预先定义了自定义宏,将
public class替换为了C标准的class关键字,这种属于非标准的自定义扩展,仅用于特定跨语言兼容场景,不属于C通用语法,日常开发不推荐使用。
两种语言的类定义对比如下:
Java/C# 合法写法
public class MyTest { // 类成员定义 }C++ 标准对应写法
class MyTest { public: // 公开成员定义 private: // 私有成员定义 };
日常开发请严格遵循C++标准语法书写代码,不要参考这类非标准的自定义写法。
内容的提问来源于stack exchange,提问作者Mohsin
相关产品推荐
相关产品推荐

