我正在尝试解决一个测验并遇到了这个问题 请解释内部导致此输出的内容
class B;
class A {
friend class B;
public:
~A() {
B boj();
cout << "object A destructor " << endl;
}
};
class B {
public:
~B() { cout << "object B destructor " << endl; }
};
int main() {
A a;
A aobj();
B bobj();
}
输出结果为:
对象析构函数
我正在尝试创建一个用户输入的程序,如果他希望添加另一条记录,如果是,则为该记录创建一个新对象。
因此,如果我包含构造函数,那么每次用户需要时如何创建新对象?
(如果我给对象数组预定义大小,那么将调用构造函数,比如说50次并初始化所有50个对象,而用户可能只想输入更少的对象。)
答案 0 :(得分:0)
首先,构建a
。然后,a
被销毁。
main
中的最后两个声明和~B()
中的声明都是本地函数声明,因此不会“执行”任何操作。