当前位置: 首页 > news >正文

徐州建设工程交易平台页面优化

徐州建设工程交易平台,页面优化,百度网站诚信认证,直播软件开发需要多少钱在JSON项目中,使用了联合体和结构体之间的嵌套,但是在访问内部的联合体和结构体的时候出现了问题,这篇文章作为记录,也希望能帮助遇到相同问题的好伙伴。 struct lept_value {union {struct str{char *s;size_t len;};double n;}…

在JSON项目中,使用了联合体和结构体之间的嵌套,但是在访问内部的联合体和结构体的时候出现了问题,这篇文章作为记录,也希望能帮助遇到相同问题的好伙伴。

struct lept_value
{union {struct str{char *s;size_t len;};double n;};lept_type type;
};

上面是最原始的代码,上面的代码可以通过下面的代码访问double n和lept_type type,

// v是一个lept_value的指针
v->n;
v->type;

但是无法访问str结构体内部的成员。如果给结构体加上名,那么连n也无法访问。例如:

struct lept_value
{union m_union{struct str{char *s;size_t len;};double n;};lept_type type;
};

我用下面的代码访问发现只提示有type一个成员。

v->m_union.str;        // 无法访问

v->m_union.n;          //无法访问

v->type;                    // 可以访问

后来通过翻译将问题翻译成英文:

如何访问结构体内部的联合体中的变量->How do I access variables in a union inside a struct

之后放到StackOverflow上进行了查询,很快有了结果,原解释如下:c++ - Accessing a variable in a union which is inside a class - Stack Overflow

typedef struct {union {struct { char* s; size_t len; }s;  /* string: null-terminated string, string length */double n;                          /* number */}u;lept_type type;
}lept_value;

参考了c语言的代码和StackOverflow上的回答,发现自己简直s b一个。

问题的原因在于:我的代码中只是声明了结构体,但是实际上并没有生成实际的对象,根本就没有这个成员,因此当然无法访问。就像使用lept_value这个数据结构,需要一个实际的对象才会分配内存,光给出声明怎么会允许访问呢?将代码修改成如下,加入了m_data和m_union,意味着默认有这两个实例,有了实例之后一切的访问都可以了(struct和union默认访问权限是public)。

struct lept_value
{union {struct str{char *s;size_t len;}m_data;double n;}m_union;lept_type type;
};// 访问方式
v->m_union.m_data.s;
v->m_union.n;
v->m_union_m_data.len;

问题到这里就解决了,后来想到vscode写代码的时候,每次提示都只显示一个type,别的显示不出来,这不就是在告诉我,你TM这个结构体里面根本没有这个成员变量!!!恨不得抽自己几个大嘴巴子。

http://www.tj-hxxt.cn/news/73823.html

相关文章:

  • 网站建设功能是什么网站宣传文案范例
  • 网页设计与制作前景如何百度seo是什么意思呢
  • 企业互联网服务平台重庆seo点击工具
  • 揭阳做网站建设公司外贸google推广
  • 怎么建设一个淘宝客网站网络舆情分析师
  • 做网站税率品牌宣传推广文案
  • 佛山市网站建设 骏域动力商品推广与营销的方式
  • 报考建设八大员官方网站广州新塘网站seo优化
  • 吉林东奥建设集团网站平台推广文案
  • 学做网站论坛会员账号公司seo推广营销网站
  • 网站上添加子栏目seo网站优化方案
  • python做网站视频教程2022近期时事热点素材
  • 武汉做网站优化公司百度关键词价格排行榜
  • 济南市城乡建设委员会网站电话网页设计模板
  • java 和网站开发百度认证营销推广师
  • 行业网站建设哪家好软文营销文章范文
  • 怎样做幼儿园网站注册公司
  • 政府建设网站百度小说风云榜排名
  • 织梦 旅游网站模板百度客服平台
  • 做网站全屏尺寸是多少网站搜索量查询
  • 信用中国 网站 建设方案产品推广图片
  • 公众号网站怎么建网站推广的技巧
  • 电商网站建设包括哪些方面windows优化大师官网
  • 做app网站公司名称青岛seo招聘
  • 包头网站 建设中牟网络推广
  • php 网站开发流程图seo成创网络
  • php做的网站怎么运行搜索引擎分类
  • 如何建设销售型企业网站怎么让百度收录
  • 橙子建站突然发验证码营销策略是什么
  • 做装修网站公司怎么制作一个简单的网页