c++ - C++ 中结构内的结构

标签 c++ struct

如何访问在另一个结构中定义的结构的成员?
假设我们有一个结构定义为:

struct FR {
    size_t n;
    struct FR_1{
        unsigned char r;
        unsigned char g;
        unsigned char b;
    };
};

在visual studio 2015下,写:

    struct FR x;
    x.FR_1.

不显示 FR_1 成员的选项。另一方面,写:

struct FR_1 y; 说:错误,不允许不完整的类型。

你如何处理这种结构?

最佳答案

示例声明类型 struct FR_1不是该类型的成员。相反,请尝试:

struct FR {
    size_t n;
    struct FR_1 {
        unsigned char r;
        unsigned char g;
        unsigned char b;
    } fr1;
};

FR x;
x.fr1.r = 0;

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

相关文章:

c - 结构体中的结构体数组?

struct - 方案结构与另一个结构

C++ 在 const vector 成员的初始化列表中嵌入 lambda

C++:帮助解释简单程序的行为

c++ - 将 %E6%B0%94%E6%97%8B%E5%93%88%E5%88%A9.txt 解码为有效字符串

c++ - 拆分一串制表符分隔的整数并将它们存储在 vector 中

C++ 为结构成员设置值**

c++ - 静态函数作为类模板参数 - 导致可维护性问题

c - 在c中合并和排序结构数组

c++ - STL列表中结构的自动初始化