gpt4 book ai didi

c++ - 如何访问结构的成员

转载 作者:行者123 更新时间:2023-11-30 03:23:24 25 4
gpt4 key购买 nike

我已经定义了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 *>'

最佳答案

排队

DisplayAttrVector dispAttrs = (*((*colorInfoVector)[i]))->m_displayVector;

(*colorInfoVector)[i] 给你一个指针。要使用指针访问结构的成员,您需要编写

((*colorInfoVector)[i])->m_displayVector

(*((*colorInfoVector)[i]))).m_displayVector

两者做同样的事情。

关于c++ - 如何访问结构的成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50391522/

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