gpt4 book ai didi

c++ - 在类的方法中初始化类的对象成员

转载 作者:行者123 更新时间:2023-11-28 03:05:00 25 4
gpt4 key购买 nike

除了构造函数之外,是否可以在类的方法中实例化对象成员变量。我想在不使用指针的情况下执行此操作,因为我试图让我的代码使用更多的堆栈内存。 (我的教授是这么说的)

我以前查过这个,我找到的最接近的东西是 extern。这听起来有点脏,我不确定这是否正是我要找的。

这就是我正在尝试做的,而且我正在尝试在没有指针的情况下进行:

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)
{
}

最佳答案

当您在堆栈上创建对象时,非指针的成员变量将自动在堆栈上创建。 (也就是说,它们将成为堆栈中对象的一部分。)您可以通过至少两种方式在对象的构造函数中将它们初始化为特定值:

A::A() : var (1,2)
{
}

A::A()
{
var = B (1,2);
}

关于c++ - 在类的方法中初始化类的对象成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19944989/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com