array:数组的意思,类名的用法如 array<int, 6> value -> int value[6] 表示同一个意思,array的类模板出现,就是为了解决数组操作越界,以及新增了size和一些iterator迭代器的操作方法,使之更好用。
vector:修改向量特性? vector x(6) vector y(7) vector z
差别:vector对象看动态增长容纳更多的元素,vector可以push_back,array不行 array<int, 6> value vector value value.push_back(2);value.push_back(3);
string 类 string xyz(“haha”); string 类型有很多操作方法。cpp中貌似没有String这种东西
多态的实现原理,例子 class A { public: virtual void f() { printf(“A -> f\n”); } virtual void g() { printf(“A -> g\n”); } };
class X : public A { public: void f () { printf(“X -> f\n”); } void g () { printf(“X -> g\n”); } };
class Y : public A { public: void f () { printf(“Y -> f\n”); } void g () { printf(“Y -> g\n”); } };
int main() { X test1; Y test2; A* test = &test1; test->f(); return 0; } 虚函数表等深刻理解 多态的实现其实就是一个父类指针指向某一个子类的实例,然后父类调用特定的接口,其实是子类的实现 因为是晚绑定,通过继承和重写虚函数表,运行时在虚函数表中寻找调用函数的地址,运行时会 根据对象的实际类型来调用对应的函数,如果是子类就调用子类,如果是父类就调用父类,这就是运行时多态
public protected private的父类子类访问范围
public 对象可以访问,对外接口 protected,对象不能访问,子类,内部和友元可以访问 private,子类和兑现都不能访问,友元可以访问 友元相当于开了一个后门,允许外部访问内部private变量 友元类:在类A中加friend声明类之后,友元类所有成员函数都可以访问A中私有成员变量 友元函数:在类A中加friend声明函数之后,该友元函数可访问A中私有成员变量
标准库的容器和迭代器
|