zoukankan      html  css  js  c++  java
  • C++ 空类默认产生的类成员函数

    C++的空类有哪些成员函数:
    . 缺省构造函数。
    . 缺省拷贝构造函数。
    . 缺省析构函数。
    . 缺省赋值运算符。
    . 缺省取址运算符。
    . 缺省取址运算符 const。

        注意:有些书上只是简单的介绍了前四个函数(宝典4th p112)。没有提及后面这两个函数。但后面这两个函数也是空类的默认函数(Ref:《effective c++》)。另外需要注意的是,只有当实际使用这些函数的时候,编译器才会去定义它们。

    1. //C++ 空类默认产生的类成员函数:
    2. //缺省构造函数,拷贝构造函数,析构函数,赋值运算符,取址运算符,取址运算符 const
    3. #include<iostream>
    4. using namespace std;
    5. class class1{
    6. public:
    7. class1(){}//缺省构造函数
    8. class1(const class1&){}//拷贝构造函数
    9. ~class1(){}//析构函数
    10. class1&operator=(const class1&){}//赋值运算符
    11. class1*operator&(){}//取址运算符
    12. const class1*operator&()const{}//取址运算符 const
    13. };
    14. //空类class2会产生class1一样的成员函数
    15. class class2{};
    16. void main()
    17. {
    18. class2 obj1;//缺省构造函数
    19. class2 obj2;
    20. obj1=obj2;//赋值运算符
    21. &obj2;//取址运算符
    22. class2 obj3(obj1);//拷贝构造函数
    23. class2 const obj4;
    24. &obj4;//取址运算符 const
    25. }

    参考文献:
    http://blog.csdn.net/makuiyu/article/details/8047340
    http://blog.csdn.net/wulibin136/article/details/6328974




  • 相关阅读:
    iOS中Zbar二维码扫描的使用
    SOJ 1135. 飞跃原野
    SOJ 1048.Inverso
    SOJ 1219. 新红黑树
    SOJ 1171. The Game of Efil
    SOJ 1180. Pasting Strings
    1215. 脱离地牢
    1317. Sudoku
    SOJ 1119. Factstone Benchmark
    soj 1099. Packing Passengers
  • 原文地址:https://www.cnblogs.com/gxcdream/p/4822066.html
Copyright © 2011-2022 走看看