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

自建站运营沈阳免费建网站

自建站运营,沈阳免费建网站,青岛外贸出口公司联系电话,深圳住房建设局官方网站有时候,我们需要在代码里配置一些常量结构,比如一个固定的动作流程ActionFlow:包含N(即flow_num)个动作列表(ActionArray),每个动作列表包含M(即act_num)个可…

有时候,我们需要在代码里配置一些常量结构,比如一个固定的动作流程ActionFlow:包含N(即flow_num)个动作列表(ActionArray),每个动作列表包含M(即act_num)个可并行执行的动作ID。

// 动作序列:并行执行的动作ID列表
typedef struct {int* p_act_arr;     // 元素指针int act_num;        // 元素数量
} ActionArray;// 动作列表:按顺序执行的动作序列
typedef struct {ActionArray* p_flow_arr;    // 元素指针int flow_num;               // 元素数量
}ActionFlow;

直观看,我们希望这样配置,一目了然,但这不符合C/C++的语法规则

// 配置固定的动作序列
ActionFlow g_act_flow = {{{{1, 2},          2},     // 第0个可并行执行的动作{{3, 4, 5, 6, 7}, 5},     // 第1个{{8},             1},     // 第2个},3                             // 共3个
};

符合规则的语法大概是这样的,看起来显得有些冗长

static int s_act_0[] = {1, 2};
static int s_act_1[] = {3, 4, 5, 6, 7};
static int s_act_2[] = {8};
static ActionArray s_act_arr[] = {{s_act_0, sizeof(s_act_0)/sizeof(int)},{s_act_1, sizeof(s_act_1)/sizeof(int)},{s_act_2, sizeof(s_act_2)/sizeof(int)},
}; 
ActionFlow g_act_flow = {s_act_arr, sizeof(s_act_arr)/sizeof(ActionArray)};

为了让定义更简洁,尽可能的只提供{1,2},{3,4,5,6,7}这些我们关心的业务数据,我们可以使用C99中引入的复合字面量(compound literals,对应C++中的列表初始化‌(list initialization))来简化上述的变长嵌套数组常量初始化定义

#define ARRAY(type, ...) (type[])__VA_ARGS__, sizeof((type[])__VA_ARGS__)/sizeof(type)
#define ACTARR(...) ARRAY(int, __VA_ARGS__)
#define ACTIONFLOW(name, ...) ActionFlow g_##name = {ARRAY(ActionArray, __VA_ARGS__)}
ACTIONFLOW(act_flow, {         \{ACTARR({1, 2})},          \{ACTARR({3, 4, 5, 6, 7})}, \{ACTARR({8})}              \
});

还有更简洁实用的方法吗?欢迎留言讨论。

http://www.yayakq.cn/news/740815/

相关文章:

  • 重庆外贸网站建设公司四川路桥建设股份有限公司网站
  • 网站突然消失了网站建设内容是经营项目吗
  • 不关网站备案wordpress中页面编辑
  • 花20亿做网站石家庄广告制作公司
  • 网站开发与优化课程总结wordpress导出乱码
  • 购买保险的网站seo服务商找行者seo
  • 网站建设费用先付一半网站方案组成要素
  • 广东网页制作与网站建设wordpress函数教程
  • 国外好看的教育类网站模板下载湖北网站建设服务
  • 网站做程序需要多久房地产新闻
  • 物流企业网站建设特色重庆大渡口建设网站
  • 上海兼职网站制作广州建设厅官网
  • 个人做的网站可以收款wordpress增加友情链接
  • 天津市建设教育培训中心网站wordpress官网教程
  • 珠海网站建设设计启闭机闸门的网站建设
  • 网站模板 黑白wordpress 域名插件
  • 17做网站官网湖北正规网站建设质量保障
  • 从哪里设置网站关键词宿州保洁公司哪家好
  • 做微淘要开通网站吗门户网站界面设计模板下载
  • wordpress建小说网站中文网站建设公司
  • 购物网站静态页面制作logo设计
  • 推广公司的网站网站建设企业网银e路通
  • 织梦网站怎么做投票深圳比较大的贸易进口公司
  • 做网站 流量怎么抓钱大型网站平台建设
  • 古镇镇建网站公司学校户网站建设方案
  • php网站怎么用mysql新建数据库实时热搜
  • 均安网站建设百度员工收入工资表
  • 毕业网站设计手机网站制作推广定制
  • 高端织梦html5网站模板 dedecms网络公司模板动漫制作专业
  • 做网站怎么设置背景网站建设需求量