如何在初始化列表中初始化一个struct-type?

如何在初始化列表中初始化一个struct-type?

问题描述:

如何在构造函数列表中初始化结构?如何在初始化列表中初始化一个struct-type?

说:

struct St{int x, y}; 

class Foo 
{ 
public: 
Foo(int a = 0, int b = 0) : /*here initilise st_foo out of a and b*/ 
{} 

private: 
const St st_foo; 
}; 

您需要为struct St这需要2个int参数,并将其分配给xy提供一个构造函数。然后在您的Foo初始化列表中调用它。

记住:结构是一样的,除了默认的可见性规则类(结构,默认为public

+0

谢谢,我现在 代码工作现在。 – m4design 2010-05-10 14:28:40

Here是情况的解答,你要零初始化的结构(对于C++ 0x中的解决方案。还指出了一般情况下),这足以使一对空括号的成员的名字后。

Foo() : st_foo()