除了构造函数之外,是否可以在类的方法中实例化对象成员变量。我想这样做而不使用指针,因为我试图让我的代码使用更多的堆栈内存。 (我的教授这么说)
我之前看过这个,我发现的最接近的事情是外在的。这听起来很脏,我不确定这是不是我正在寻找的。 p>
这就是我正在尝试做的事情,而我正试图在没有指针的情况下这样做:
class A
{
private:
B var;
public:
A();
void setVar();
};
A::A()
{
}
void A::setVar()
{
var = B(1,2);
}
class B
{
public:
B();
B(int a, int b);
};
B::B()
{
}
B::B(int a, int b)
{
}
答案 0 :(得分:2)
在堆栈上创建对象时,将自动在堆栈上创建非指针的成员变量。 (也就是说它们将成为堆栈中对象的一部分。)您可以通过至少两种方式将它们初始化为对象构造函数中的特定值:
A::A() : var (1,2)
{
}
或
A::A()
{
var = B (1,2);
}