c++中结构体和类的异同

来源:互联网 发布:stl stack源码 编辑:程序博客网 时间:2024/05/16 00:41
结构体是对数据(变量)的封装。类是对数据(变量)和函数(方法)的封装。
在C语言中,结构体中使用函数则必须使用指针,在C++中结构体可以有函数,但不推荐这样使用(一般都不用)。
类是具有相同属性和行为的对象的抽象,使用类时,需先定义一个类变量,定义类的变量就是对象。定义对象时,会自动调用构造函数(所以构造函数的使用是从定义一个类时开始的)。

结构体内的变量默认为public ,而类中变量默认为private类型。 

Protected只有自己和子类可以使用,private只有自己可以使用。

类中使用指针时,需要用new分配它自己的空间:
class A{
private:int * m_pAge;
public:A(){
m_pAge=new int(100);
}
}
由于new或者malloc后需要手动删除堆空间,由此引入析构函数
1 0
原创粉丝点击