金庆的专栏

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  335 随笔 :: 0 文章 :: 454 评论 :: 0 Trackbacks
结构体初始化列表错误

(金庆的专栏 2016.12)

struct A
{
    int a = 0;
};

int main()
{
    A a{0};
    return 0;
}

报以下错误:

error C2440: “初始化”: 无法从“initializer list”转换为“A”
note: 无构造函数可以接受源类型,或构造函数重载决策不明确

去除 A.a 的类内初始化就好了。

struct A
{
    int a;
};

应该是添加类内初始化后,就不再有默认构造函数了。
posted on 2016-12-12 17:16 金庆 阅读(128) 评论(0)  编辑 收藏 引用 所属分类: 1. C/C++

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理