1.类
C++中可以使用struct、class来定义一个类。
struct和class的区别:struct的默认成员函数权限是public class的默认成员权限是private;
2.封装
成员变量私有化,提供公共的getter和setter给外界去访问成员变量。
struct Person {
private:
int m_age;
public:
void setAge(int age) {
this->m_age = age;//this不加编译器会补上
}
int getAge() {
return this->m_age;
}
};
int main() {
Person person;
person.setAge(2);
cout << "prson age" << person.getAge() << endl;
}
3.内存空间的布局
每个应用都有自己独立的内存空间,其内存空间一般有以下几大区域:
代码段(代码区):用于存放代码。
数据段(全局段):用于存放全局变量等。
栈空间:每调用一个函数就会给它分配一段连续的栈空间,等函数调用完毕后会自动回收这段栈空间;自动分配和回收。
堆空间:需要主动去申请和释放。再程序运行过程,为了能够自由控制内存的生命周期、大小,会经常使用堆空间的内存。
堆空间的申请\释放:malloc\free ;new\delete ; new[]\delete[];申请堆空间成功后,会返回