如何访问结构的成员
How to access a member of a structure
>我在类中定义了typedef std::vector<ColorInfo*> ColorInfoVector;
struct ColorInfo
{
ColorInfo() : m_displayVector() {}
// data members
DisplayAttrVector m_displayVector;
};
我正在获得一个方法的输入,作为
void Display (ColorInfoVector *colorInfoVector)
当我尝试访问成员变量 og 结构时,该方法如下所示
DisplayAttrVector dispAttrs = (*(colorInfoVector[i]))->m_displayVector;
获取错误
error C2100: illegal indirection
error C2039: 'm_displayVector': is not a member of 'std::vector<ColorInfo *>'
in line
DisplayAttrVector dispAttrs = (*((*colorInfoVector)[i]))->m_displayVector;
(*colorInfoVector)[i]
给你一个指示。要使用指针访问结构的成员,您需要编写
((*colorInfoVector)[i])->m_displayVector
或
(*((*colorInfoVector)[i]))).m_displayVector
两者都做同样的事情。
应该像这样工作:
(*colorInfoVector)[i]->m_displayVector;
相关文章:
- 具有结构成员char数组的sscanf
- 仅使用结构名称访问结构成员
- 使用 structType*& 赋给结构成员
- 使用结构成员指针在C++中填充结构
- 聚合初始化,将成员指针设置为同一结构成员
- 为什么结构化绑定不使用"auto&"返回对结构成员的引用,而是返回成员本身
- 是否可以将结构数组别名为结构成员数组?
- 结构成员在访问时被清除
- 如何指示结构成员没有锯齿?
- 为什么继承的结构成员在联合中无法访问?
- 尝试在 qml 中访问结构成员的 QList
- C++/CLI -- 访问结构成员
- 调用在类中声明的结构成员
- 对结构成员的临时绑定引用
- 无法使用 strcpy 将字符串复制到静态结构成员
- 为什么类成员数据必须是静态的才能被模板化类的模板化结构成员访问
- 填充模板化结构类型的结构成员
- C/C++intellisense 0.26.1不显示结构成员列表
- 在源文件中创建具有结构成员的结构
- 如何访问结构成员作为指针