从类中包含的结构访问变量

Posted

技术标签:

【中文标题】从类中包含的结构访问变量【英文标题】:Accessing variables from a struct included in a Class 【发布时间】:2021-10-06 07:37:34 【问题描述】:

我有一个类,其中包括一个结构。我已经声明了给定类的两个变量,但我无法从结构变量中访问这些变量。 班级:

class Game

public:
    Game( class MainWindow& wnd );
    Game( const Game& ) = delete;
    Game& operator=( const Game& ) = delete;
    void Go();
private:
    void ComposeFrame();
    void UpdateModel();
    /********************************/
    /*  User Functions              */
    /********************************/
private:
    MainWindow& wnd;
    Graphics gfx;
    /********************************/
    /*  User Variables              */
    int x_mobile, y_mobile;
    bool Collision();
    /********************************/
public:
    struct Bar 
        int speed, start;
        bool pressedDown = false, pressedUp = false;
        int extremitati[108];
    ;
    bool Collision(int x, int y, Bar both);
    bool MoveBar(Bar l, Bar r);
    void ConstructBar(Bar l, Bar r);

;

而且,我在这里创建了两个结构变量:“left”和“right”。在这些结构变量中,我有一个名为“start”的变量,我想访问它,但是不起作用,我不知道如何访问它们。

// objects
Game::Bar left, right;


//

// Bar Objects - Variables
Game::Bar::left.start = 100;
//

而且,当我尝试访问它时,我收到此错误:

【问题讨论】:

【参考方案1】:

在表达式中使用变量时,不需要在变量前面加上类型:

left.start = 100;

...因为leftright 是这里的变量名。

【讨论】:

以上是关于从类中包含的结构访问变量的主要内容,如果未能解决你的问题,请参考以下文章

C ++从类外部设置指向结构中函数成员的指针

通过更改代码格式来计算结构向量中包含的双变量的平均值的不同结果?

如何访问 SpriteKit 场景编辑器参考节点上自定义类中包含的 Swift 中的变量?

如何从类外修改向量

dplyr:如何以编程方式完整连接列表列表中包含的数据帧?

访问模块中包含的 ruby​​ 方法的符号