自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 问答 (1)
  • 收藏
  • 关注

原创 构造函数语义

结论 在类没有提供默认构造、拷贝构造函数、拷贝赋值函数时,编译器会自动合成相应的函数; 编译器只在需要的时候合成编译器完成必要工作所需要的默认构造、拷贝构造、拷贝赋值函数 构造函数语义 一、合成的默认构造函数 合成时机:默认构造函数在被编译器需要的时候被合成; 功能:只执行编译器需要的行动; 具体说明 类中包含成员对象,且该成员对象的类有默认构造函数:编译器会合成一个默认构造函数,只执行必要的操作用来调用foo的默认构造,但是不会对str进行任何处理。 派生自带有默认构造函数的基类: [例] 同上 带有

2022-05-26 17:59:30 62

原创 Effective C++ 条款05:了解C++默默编写并调用的函数

Effective C++ 条款05:了解C++默默编写并调用的函数 结论: ​ 通常,概念上,如果类的设计者自己没有声明,编译器会自动生成编译器版本的默认构造函数、拷贝构造函数、拷贝赋值函数、析构函数;而实际上,编译器只在需要调用相应函数的时候才会生成响应的函数; (一)、默认构造函数 (1)合成时机: 类中包含成员对象,且该成员对象的类有默认构造函数(手动声明或者编译器合成); 派生自带有默认构造函数的基类; 带有虚函数或者虚基类的类的类; (2)构造函数的扩充: ​ 如果类的设计者已经实现了一个或

2022-05-26 17:58:22 106

原创 模板相关内容笔记

模板相关内容笔记 一、模板泛化编程 (一)函数模板 1、函数模板定义方式: template <class Type, int size> Type min(const Type (&r_array)[size]) { Type min_val = r_array[0]; for (int i = 1; i < size; ++i) { if (r_array[i] < min_val) { mi

2022-05-26 17:57:42 67

原创 全局对象的构造和析构

全局对象的构造和析构 _init() 函数先于main函数调用,_fini() 后于main函数调用; _init() 函数中会对全局对象进行构造,_fini() 对全局对象进行析构; 编译器对每一个编译单元进行编译是,若检测到该编译单元中有实现了构造函数的全局对象,则会合成一个全局对象构造函数GLOBAL_VAR_INIT(),用来对全局变量进行初始化;该函数指针被放在该编译单元的.ctor段内;同时,若对象声明了析构函数,还会注册全局析构函数; 链接器链接时,将编译单元中的同名段进行合并,于是所有包含

2022-05-26 17:54:02 464

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除