C++
qq_26369213
这个作者很懒,什么都没留下…
展开
-
【C++】静态成员与单例模式
C++中的静态成员,以及单例模式的实现原创 2015-07-11 20:31:11 · 1230 阅读 · 1 评论 -
【C++】智能指针的实现
一点都不智能的智能指针 #include using namespace std; template class Auto { public: // 避免编译器报错,需要显式类型转换 explicit Auto(T* data = NULL) : m_data(data) {} // 转移拷贝 Auto(Auto& that) : m_data(change(that)) {}原创 2015-08-08 18:27:48 · 506 阅读 · 0 评论 -
钻石继承和虚继承
在C++中,类是允许多继承的,多继承大大的提高了代码的复用、减少代码冗余、大大的提高了类的表现力,使得类更贴近现实中的事物,使用起来更为灵活,更面向对象。 但由于这灵活的语法,使得C++使用起来比别的编程语言更为复杂,不过凡事有利必有弊,这里就不去探讨其中的利弊,还是把注意力放到使用继承时候需要注意的地方。 钻石继承 什么是钻石继承?原创 2015-08-22 21:39:43 · 3671 阅读 · 2 评论 -
C++中的运算符重载
运算符重载 重载的运算符必须接受至少一个自定义类型。接受的参数都为内置类型的运算符无法被重载。 运算符作为类的成员函数被重载时,类的对象就作为第一个参数。注意此时函数的返回方式。 重载++a会调用operator++(a),重载a++会调用operator++(a, int),其中第二个int参数是不会被用到的,只是用来区分前缀和后缀调用。--的重载也是一样。原创 2015-07-30 22:22:57 · 1045 阅读 · 0 评论 -
C++ 多态,虚函数
虚函数和多态 1.基本概念 如果在类中某个成员函数被定义为虚函数,那么在该类的派送类中如果拥有与基类虚函数函数原型相同的函数同样为虚函数,并且与其基类中的版本构成覆盖关系。 一个指向子类的基类指针或引用子类的基类引用,调用虚函数,若基类的虚函数被子类的覆盖,则调用子类版本而非基类版本,否则调用基类版本,这种语法称为多态。 2.覆盖的条件 成员函数 + 虚函数 +原创 2015-09-06 23:06:01 · 496 阅读 · 0 评论 -
【C++】双向线性链表容器的实现
// 双向线性链表容器 #include #include #include using namespace std; // 链表类模板 template class List { public: // 构造、析构、支持深拷贝的拷贝构造和拷贝赋值 List(void) : m_head(NULL), m_tail(NULL) {} ~List(void) { clear();原创 2015-08-06 22:47:36 · 989 阅读 · 0 评论