Effective C++ 学习笔记 条款05 了解C++默默编写并调用了哪些函数

当写下一个空类时,编译器会为你合成一个拷贝构造函数、一个拷贝赋值运算符、一个析构函数,如没有声明其他的构造函数,编译器会合成一个默认构造函数。这些都是inline的public成员。

当类有一个引用成员或const成员时,编译器不会合成拷贝赋值运算符。

如某个基类将拷贝赋值运算符声明为private的,则编译器不会为派生类合成拷贝赋值运算符,因为派生类无法处理基类的成分。

C++ 11中当没有定义任何拷贝控制成员且所有成员都能移动时,会合成移动构造函数和移动赋值运算符。

posted @   epiphanyy  阅读(4)  评论(0编辑  收藏  举报  
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示