一:面向过程和面向对象
C语言是面向过程的,关注的是过程,分析求解问题的步骤,通过函数调用逐步解决问题。
C++ 是 基于面向对象 的, 关注 的是 对象 ,将问题拆分成不同的对象,靠对象之间的交互完成。
二:类的定义
class 类名
{ public: 一般放成员函数 //这里是公有的 类外可以直接被访问
private: 一般放成员变量 //这里是私有的 类外不可以直接被访问
};
class是类的关键字,默认权限是private。c语言中的struct也可以用,只不过里面默认全是public的,因为要兼容c语言。
定义时可以全部放在类中,也可以声明和定义分离。这里讲分离的
class date { //头文件的
public:
void print();
private:
int _year;
int _month;
int _day;
};
void date::print() { //cpp源文件
cout << _year << _month << _day;
}
声明定义分离就得用上这个::域作用符表面在date类里。
三:类的大小
类的大小只与你的成员变量有关,类中的函数放在公共代码区,请看
class A {
public:
void print();
private:
int a;
int b;
};
class B {
public:
void print();
};
class C {};//空类
int main() {
int a = sizeof(A), b = sizeof(B), c = sizeof(C);
cout << a << endl << b << endl << c;
return 0;
}
输出是8 1 1 仍然遵从内存对齐原则,空类和没成员变量的大小为1
感谢你看到这,大家共同进步