C++ 选择类对象字段的构造函数
我有一个名为Foo的类,它有另一个名为Bar的类作为字段。Bar只有一个带参数的构造函数。如何选择带Bar参数的构造函数(不存储Bar*而不是Bar,并且调用new) 福安 酒吧 Foo.cppC++ 选择类对象字段的构造函数,c++,object,constructor,C++,Object,Constructor,我有一个名为Foo的类,它有另一个名为Bar的类作为字段。Bar只有一个带参数的构造函数。如何选择带Bar参数的构造函数(不存储Bar*而不是Bar,并且调用new) 福安 酒吧 Foo.cpp Foo::Foo() : bar(bar(1)) {} Foo::Foo() : bar(NULL) { bar = new Bar(1); } 我想这样做是因为我听说,除非绝对需要避免管理内存,否则将指针存储为字段通常是不好的,所以我想避免这样的事情: 福安 Foo.cpp Foo
Foo::Foo()
: bar(bar(1))
{}
Foo::Foo()
: bar(NULL)
{
bar = new Bar(1);
}
我想这样做是因为我听说,除非绝对需要避免管理内存,否则将指针存储为字段通常是不好的,所以我想避免这样的事情:
福安
Foo.cpp
Foo::Foo()
: bar(bar(1))
{}
Foo::Foo()
: bar(NULL)
{
bar = new Bar(1);
}
如此接近
Foo::Foo()
: bar(1)
{}
您还需要在类Foo
的定义中声明构造函数Foo()
Foo::Foo()
: bar(1)
{}
您还需要在类Foo
的定义中声明构造函数Foo()
Foo::Foo()
: bar(1)
{}
您还需要在类Foo
的定义中声明构造函数Foo()
Foo::Foo()
: bar(1)
{}
您还需要在类Foo
的定义中声明构造函数Foo()
改为:
:条(条(1)){
请注意大写字母B.您所拥有的看起来几乎不错,但是您需要调用构造函数,而不是参数或变量名
改为:
:条(条(1)){
请注意大写字母B.您所拥有的看起来几乎不错,但是您需要调用构造函数,而不是参数或变量名
改为:
:条(条(1)){
请注意大写字母B.您所拥有的看起来几乎不错,但是您需要调用构造函数,而不是参数或变量名
改为:
:条(条(1)){
注意大写字母B。我接受这个答案,因为它是第一个,而且有效。这也是一个非常酷的速记方式。我接受这个答案,因为它是第一个,并且有效。这也是一个非常酷的速记方式。我接受这个答案,因为它是第一个,并且有效。这也是一个非常酷的速记方式这样做的方式。我接受这个答案,因为它是第一个,而且很有效。这也是一个非常酷的速记方式。这个答案也很有效,这也是我最初认为我必须做的。另一个答案比较短,但对于初学者(像我一样)来说,这个答案可能更清楚这个答案也有效,也是我最初认为我必须做的。另一个答案更短,但这个答案对初学者(像我一样)可能更清楚。这个答案也有效,也是我最初认为我必须做的。另一个答案更短,但这个答案对初学者(像我一样)可能更清楚这个答案也有效,这是我最初认为我必须做的。另一个答案较短,但对于初学者(像我一样)来说,这个答案可能更清楚