繁体   English   中英

成员初始化

[英]Member initialization

我将一个Ghost类的对象的固定大小数组与另一个类板相关联。 ghost类具有默认的构造函数,如下所示:

Ghosts(int x = 0, int y=0)
{
    x_pos = x;
    y_pos = y;
}

我的董事会课程的一部分如下:

class Board {
private:    

    Ghosts G[4];

public:

    Board(): G[0](11,18),G[1](13,21),G[2](15,18),G[3](13,18)
    {
        G[0].name("Pinky");
        G[1].name("Blinky");
        G[2].name("Inky");
        G[3].name("Clyde");
    }

问题出在我的成员初始化列表或我的解决方法上。 帮助将不胜感激。 谢谢!

成员初始化器列表只能命名成员。 G是成员。 G[0]不是。

您可以将其更改为: G{ {11,18}, {13,21}, {15,18}, {13,18} }

这样的事情怎么样:

Ghosts(int x = 0, int y=0, std::string name = "")
{
    x_pos = x;
    y_pos = y;
    this->name = name;
}

Board()
{
    G[0] = Ghost(11,18, "Pinky");
    G[1] = Ghost(13,21, "Blinky");
    G[2] = Ghost(15,18, "Inky");
    G[3] = Ghost(13,18, "Clyde");
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM