C++
保留词
修饰符:signed unsigned long short
限定符
const 描述的对象在执行时不可被改变;
volatile 描述的对象为编译器不可优化的变量;
restrict 限定修饰的指针为唯一一种访问指向对象的方式;
C++面向对象
继承
#include <iostream>
using namespace std;
class Shape { // 基类 Shape
public:
void setWidth(int w) { width = w; }
void setHeight(int h) { height = h; }
protected:
int width;
int height;
};
class PaintCost { // 基类 PaintCost
public:
int getCost(int area){ return area * 70; }
};
// 派生类
class Rectangle: public Shape, public PaintCost {
public:
int getArea() { return (width * height); }
};
int main(void)
{
Rectangle Rect;
int area;
Rect.setWidth(5);
Rect.setHeight(7);
area = Rect.getArea();
// 输出对象的面积
cout << "Total area: " << Rect.getArea() << endl;
// 输出总花费
cout << "Total paint cost: $" << Rect.getCost(area) << endl;
return 0;
}
重载
函数重载:一个类中,由形式参数区分同名的几个函数;
运算符重载
双目运算符重载(加减乘除模);
#include <iostream>
using namespace std;
class Box {
public:
double getVolume(void) { return length