C++:练习题

一、构造、析构顺序

cpp 复制代码
C c;
int main()
{
    A a;
    B b;
    static D d;
    return 0;
}
//构造顺序:C A B D
//析构顺序:~B ~A ~D ~C

二、拷贝构造次数

以下代码共调用多少次拷贝构造?

cpp 复制代码
Widget f(Widget u)  //第一次:传值拷贝构造
{
    Widget v(u);    //第二次:传值拷贝构造
    Widget w = v;   //第三次:赋值拷贝构造
    return w;       //第四次:返回临时变量,拷贝构造
}
void main
{
    Widget x;
    f(x);
} //共调用4次
cpp 复制代码
Widget f(Widget u) 
{
    Widget v(u);    
    Widget w = v;  
    return w;      
}
void main
{
    Widget x;
    f(f(x));
}  //共调用7次
相关推荐
yong158585534322 分钟前
1. Linux C++ muduo 库学习——库的编译安装
linux·c++·学习
mit6.8241 小时前
回溯剪枝trick
c++
渡我白衣2 小时前
C++世界的混沌边界:undefined_behavior
java·开发语言·c++·人工智能·深度学习·语言模型
却道天凉_好个秋2 小时前
c++ 协程
c++
无敌最俊朗@4 小时前
视频时间基 (time_base) 详解:时间的“刻度单位”
c++
脏脏a4 小时前
【C++ 入门】:引用、内联函数与 C++11 新特性(auto、范围 for、nullptr)全解析
开发语言·c++
AA陈超4 小时前
虚幻引擎5 GAS开发俯视角RPG游戏 P06-28 构建属性菜单小部件控制器
c++·游戏·ue5·游戏引擎·虚幻
恒者走天下4 小时前
cpp / c++零基础就业学习一站式学习平台
开发语言·c++·学习
qq_433554544 小时前
C++ 单调栈
数据结构·c++·算法
fpcc4 小时前
计算机原理—缓存
c++·缓存