C++面向对象高级编程 第二周 博览网

三大函数:拷贝赋值、拷贝构造、析构

  • class内有指针的情况下不能使用编译器默认的构造、赋值、析构函数。特别是拷贝构造,拷贝赋值函数。
  • 对于含有指针的拷贝赋值函数,首先要进行自我赋值检测(如果是自我赋值而没有自我赋值检测会造成严重的错误),其次要将之前的指针指向的内容释放掉,否则会造成内存泄漏。
  • 在class内的成员变量和成员函数中,如果成员变量前加static修饰符则其在内存内某一个地方单独存在,无论创建多少object都只有一份。在成员函数前加static修饰,则函数变为静态成员函数,它不能使用默认的this指针,故只能操作静态成员变量。对于静态成员变量应该在class声明后进行初始化操作。 调用static函数的方式有两种:1.通过object调用2.通过class name调用。
  • class模板以template <typename T>开头
  • function模板以template <class T>开头
  • 使用命名空间
namespace std {
    ...//定义  可以分开写,不需要一次全部写完
}
  • 转换函数重载 operator type() const;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容