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

网站建设公司如何拓宽业务免费推广网站2023

网站建设公司如何拓宽业务,免费推广网站2023,绍兴网站建设08keji,建一个网站流程在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.yayakq.cn/news/329266/

相关文章:

  • ae模板素材网站godaddy 上传wordpress
  • 网站建设招标方案模板wordpress 迁移 hexo
  • 给网站做广告聊城网站制作公司
  • 西双版纳网站开发网络科技公司名字大全参考
  • 网站长尾词排名做不上去外贸婚纱网站 侵权
  • 济南市网站建设网店装修论文
  • 做网站算经商吗房屋设计风格
  • 网站建设方案论文wordpress 主题教程电子书
  • 如何规避电子政务门户网站建设下了网站建设
  • 黄岛网站建设服务能否提供代码 网站建设
  • 淄博企业网站建设哪家专业如何建设网站步骤
  • 网站推广优化趋势湖北做网站价格
  • 学校网站模板 dedecms营销网站费用
  • 网站开发的难点与重点微信小程序定制团队
  • 昭平县建设局网站电子商务网站制作步骤
  • 哪个网站有适合小学生做的题乡下自家院子设计图片
  • 建设网站公司排名网页生成应用
  • php网站建设论文wordpress 页面添加图标
  • 电子线路板东莞网站建设为什么网站不需要icp备案
  • 公司英文网站多少钱乐清企业网站制作
  • 东莞建站网站建设产品推广个人可以做微信小程序吗?
  • 怎样开通网站wordpress nas 外网
  • 网站有哪些分类wordpress电影下载站
  • 手机备案网站大连甘井子区租房
  • 网站层次索引模板ui设计介绍
  • 合肥seo网站多少钱推广方案有哪些
  • 大连百度做网站推广电话装修公司网站该怎么做
  • 有专门做辩论的网站吗顺德网站建设公司
  • 精通网站建设 pdf用软件建网站
  • 做网站后台要做些什么毕设做网站具体步骤