成员数据的初始化与销毁顺序

题目描述

补全下方对象构造时传入的参数,使得程序按照从小到大的顺序输出数字。

关于输入

关于输出

见样例输出

参考答案

#include <iostream>

class Bob
{
private:
    int num2;
    int num1;
public:
    Bob(int x1, int x2) : num1(x1), num2(x2)
    {
        std::cout << num1 << std::endl;
    };
    ~Bob()
    {
        std::cout << num2 << std::endl;
    };
};

class Alice
{
private:
    Bob bob2;
    Bob bob1;

    int num2;
    int num1;
public:
    Alice(int x1, int x2, int x3, int x4, int x5, int x6) : bob1(x1, x2), bob2(x3, x4), num1(x5), num2(x6)
    {
        std::cout << num1 << std::endl;
    };
    ~Alice()
    {
        std::cout << num2 << std::endl;
    };
};

int main()
{
    Alice alice1(
// 在此处补充你的代码
2, 5, 1, 6, 3, 4
);

    return 0;
}