C++ class和struct的区别
2017-07-17 18:28
267 查看
class 和 struct的一个区别就是对默认的继承访问权限不同
class的默认访问属性是私有的(private),而struct的默认访问属性是公共的(public)
用class定义类:
而用struct定义类:
因此我们可以得知:
因此,在写类继承的时候,我们通常这样写:
目的是为了指明是public继承,而不是用默认的private继承。
默认的继承方式取决于子类而不是基类,例如:
class的默认访问属性是私有的(private),而struct的默认访问属性是公共的(public)
用class定义类:
class A{ int i; }; 这与下面代码等价: class A{ private: int i; };
而用struct定义类:
struct A{ int i; } 这样下面代码等价: struct A{ public: int i; };
因此我们可以得知:
struct A { int a; }; struct B : A { int b; }; //这里的 B 是以public的方式继承 A 的。
class A { int a; }; class B : A { int b; }; //这里的 B 是以private的方式继承 A 的,这也就是默认的继承访问权限。
因此,在写类继承的时候,我们通常这样写:
class B : public A
目的是为了指明是public继承,而不是用默认的private继承。
默认的继承方式取决于子类而不是基类,例如:
struct A{}; class B : A{}; // private 继承 struct C : B{}; // public 继承
相关文章推荐
- 在c++中struct和class的区别
- 关于C++ 里struct 和 class的区别
- c++中class和struct的区别
- Thinking in C++: C++中关于union、struct、class的区别
- [C\C++]基本问题1——C++中struct和class的区别
- C++中struct和class关键字的区别
- C++中结构体与类的区别(struct与class的区别)
- C++中结构体与类的区别(struct与class的区别)
- C++中struct与class的区别
- C++中struct与Class的的区别
- C++中struct和class的区别
- C++中struct与class的区别是什么?
- C++中class和struct的区别
- C++中struct和class的区别
- 【zz】C++中struct与class的区别
- C++中可以用struct和class来定义类型,这两种类型有什么区别
- C/C++的class和struct的区别
- C++中struct与class的区别
- C++中结构体与类的区别(struct与class的区别)
- C++中struct与class的区别