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




  • 相关阅读:
    poi 导出文件
    获取哪一年 周一的所有日期
    线程池配置
    mybatis基于唯一索引插入或更新
    mongoTemplate关联查询
    cas认证机制
    SpringBoot服务
    HashMap的底层实现
    maven仓库提示“Downloading: http://repo.maven.apache.org/maven2/”
    Tomcat安装SSL证书
  • 原文地址:https://www.cnblogs.com/gxcdream/p/4822066.html
Copyright © 2011-2022 走看看