首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

c++ 结构体初始化解决思路

2012-04-19 
c++ 结构体初始化这是结构体:C/C++ codeconst struct configcommandinfo {const char *namevoid (*fn)(ad

c++ 结构体初始化
这是结构体:

C/C++ code
const struct configcommandinfo {  const char *name;  void (*fn)(adns_state ads, const char *fn, int lno, const char *buf);} configcommandinfos[]= {  { "nameserver",        ccf_nameserver  },  { "domain",            ccf_search      },  { "search",            ccf_search      },  { "sortlist",          ccf_sortlist    },  { "options",           ccf_options     },  { "clearnameservers",  ccf_clearnss    },  { "include",           ccf_include     },  {  0                                   }};


放在
C/C++ code
class A{    A(){};    ~A(){};private:configcommandinfo  configcommandinfos[];}


怎么做呢?

[解决办法]
我觉得现在需要做的是等待,等c++11普及,就可以了
[解决办法]
class A{
A():configcommandinfos({ \
{ "nameserver", ccf_nameserver }, \
{ "search", ccf_search }, \
{ "sortlist", ccf_sortlist }, \
{ "options", ccf_options }, \
{ "clearnameservers", ccf_clearnss }, \
{ "include", ccf_include }, \
{ "domain", ccf_search }, \
{ 0 } \
}){}
private: configcommandinfo configcommandinfos[8]; 
};
gcc 4.6.2 没问题
[解决办法]
扩展初始值设定列表只在 -std=c++0x 或 -std=gnu++0x 下可用 [默认启用]
[解决办法]
探讨

引用:

class A{
A():configcommandinfos({ \
{ "nameserver", ccf_nameserver }, \
{ "search", ccf_search }, \
{ "sortlist", ccf_sortlist },……


vs2008……

热点排行