我有一个名为 "obj" 的类和另一个名为 "aggregate" 的类。
第二个是从第一个衍生而来的。
“obj”类只包含一个整数。“聚合”仅此而已(只有更多“方法”)。
class obj{
public:
int t;
}
我有一个返回“obj”的函数
obj pop();
我需要将它的结果分配给“聚合”类的变量。
聚合 a;a=pop();
我尝试这样做:
a=static_cast<aggregate>(pop());
a=dynamic_cast<aggregate>(pop());
因为基本上在堆栈上传递了结构的值(所以本质上是一个整数)我不明白为什么我应该这样做:
a=*((aggregate*)(&pop()));