gpt4 book ai didi

c++ - 在 C++ 类中访问 getter setter 中的结构变量

转载 作者:太空狗 更新时间:2023-10-29 23:42:56 24 4
gpt4 key购买 nike

好的,我在 C++ 中有这样的东西:

class MyClass{
private:
int someVariable;
int someOtherVariable;

struct structName{
int someStructVariable;
int someOtherStructVariable;
};//end of struct

public:
//getters & setters for the defined variables.

int getSomeStructVariable()
{
// this does not work I get this error: "error: expected primary-expression
// before '.' token"
return structName.someStructVariable;
}
};//end of class

在这种情况下我应该如何编写我的 getter 或 setter?

最佳答案

structName 是类型名称的一部分,而不是变量名称。您需要给它起一个名字,例如:

struct structName {
int someStructVariable;
int someOtherStructVariable;
} myStructure;

然后在您的访问器中使用:

return myStructure.someStructVariable;

这应该能让您得到想要的结果。结构变量的其他替代方案是将结构定义与变量声明分开:

struct structName {
int someStructVariable;
int someOtherStructVariable;
};

struct structName myStructure;

或在 typedef 中添加:

typedef struct structName {
int someStructVariable;
int someOtherStructVariable;
} structTypedefName;

structTypedefName myStructure;

关于c++ - 在 C++ 类中访问 getter setter 中的结构变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1652255/

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