目录
struct
class
struct和class的区别
struct
struct是描述一个数据结构的集合,像一周有七天,你可以把一周看成是一个结构体,然后在结构体里面定义一个数组来存放这个七天。在C语言中,定义结构体后,如果要使用该结构体定义结构体变量的话,需要在定义的前面加上struct关键字,或者通过typedef取别名,再用结构体名称进行变量定义。而在C++语言中可以直接通过结构体名称对结构体变量进行定义。在C++中包含了三种访问权限,包含public、private、protected,在C语言中只有public权限,默认没设置权限访问时是为public权限。像下面代码中的day数组的访问权限就是public。
/* 在C语言中的结构体 */
struct Week{
int day[7];
};
// 第一种定义方式:C语言的风格
struct Week week1; // 定义一个结构体变量
// 第二种定义方式:C语言的风格
typedef struct Week{
int day[7];
};
Week week1; // 定义一个结构体变量
/* 在C++语言中的结构体 */
struct Week{
int day[7];
};
Week week1; // 直接用结构体名称来定义变量
class
class类是描述对一个对象进行封装,例如一个人,他有鼻子、眼睛、嘴巴等等属性,并且他会说话、走路、眨眼睛等等方法,将这些属性全部封装成一个框,这个框叫做类。类有利于我们程序的开发和后期的维护。在C语言中没有类的概念,C++才有类,对类的定义如下代码,类包含了三种访问权限,分别是public、private、protected。默认的属性是private权限,像下面的hands属性就是private权限。
class Person{
int hands; // 类属性手,默认为private权限
public:
Person(){} // 类构造函数
~Person(){} // 类析构函数
private:
int mouth; // 类属性嘴巴
int eye; // 类属性眼睛
public:
void Speaking(); // 类方法行为
void Walking(); // 类方法行为
protected:
};
struct和class的区别
类别 | struct | class |
---|
含义 | 定义一个数据结构集合 | 一个的对象的封装 |
默认访问权限 | public | private |
继承 | 能(默认公有继承) | 能(默认私有继承) |
包含成员函数 | 能 | 能 |
实现多态 | 能 | 能 |
定义模板参数 | 不能 | 能 |
关于C++的模板,后面小编专门写一篇来解释一下。
关注微信公众号了解更多
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)