摘要: 1.继承的复习 1.1 类型转换 编译器认为访问范围缩小是安全的。 1.2 子类的构造与析构 子类中对基类构造函数初始化只能写在初始化表里,不能写在函数体中。 阻断继承。 1.3 子类的拷贝构造与拷贝赋值 2. 多重继承、钻石继承和虚继承 多重继承 一个类可以同时从多个基类继承实现代码。 示例代码: 阅读全文
posted @ 2019-04-20 14:30 鸿蒙过客 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2019-04-13 20:58 鸿蒙过客 阅读(150) 评论(0) 推荐(0) 编辑
摘要: #include using namespace std; class Human{ public: Human(string const& name, int age):m_name(name), m_age(age) { cout m_name m_age m_no who(); Student* ps = static_cast(ph); ... 阅读全文
posted @ 2019-04-09 13:21 鸿蒙过客 阅读(138) 评论(0) 推荐(0) 编辑
摘要: #include #include using namespace std; class A{ public: A(void) { cout << "A::A(void)" << this << endl; } ~A(void) { cout << "A::~A(void)" << this << endl; ... 阅读全文
posted @ 2019-04-07 20:31 鸿蒙过客 阅读(74) 评论(0) 推荐(0) 编辑
摘要: #include using namespace std; class Point2D{ public: Point2D(int x, int y):m_x(x), m_y(y){} friend ostream& operator<<(ostream& os, Point2D& p2) { return os<<"2D(" << p2.m_x ... 阅读全文
posted @ 2019-04-07 19:16 鸿蒙过客 阅读(84) 评论(0) 推荐(0) 编辑
摘要: 1.只有函数运算符可以带缺省函数,其他运算符函数主要由操作符个数确定 2.解引用运算符和指针运算符 示例代码: ~A(void) { cout << "A析构" << endl; }int m_data; ~PA(void) { if(m_pa) { delete m_pa; m_pa = NULL 阅读全文
posted @ 2019-04-04 14:20 鸿蒙过客 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 1.成员指针实质:特定成员变量在对象实例中的相对地址。 2.类内可以直接初始化静态常量(声明部分)。 阅读全文
posted @ 2019-03-31 13:57 鸿蒙过客 阅读(107) 评论(0) 推荐(0) 编辑
摘要: http://www.cnblogs.com/bluestorm/archive/2012/10/28/2743792.html 阅读全文
posted @ 2019-03-30 21:28 鸿蒙过客 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 1 Array& operator = Array(Array const& that){ 3 //避免自赋值 4 if(&that != this){ 5 //释放旧资源 6 if(m_array) 7 { 8 delete[] m... 阅读全文
posted @ 2019-03-29 09:43 鸿蒙过客 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 打补丁:patch -p1 <路径 阅读全文
posted @ 2019-03-26 22:37 鸿蒙过客 阅读(215) 评论(0) 推荐(0) 编辑