开发者社区> 问答> 正文

C++数据成员赋值方式问题

在成员函数中给一个数据成员赋值,若该数据成员是"me",那么"me=1"和"me(1)"有何不同?

展开
收起
a123456678 2016-03-04 16:06:42 1843 0
1 条回答
写回答
取消 提交回答
  • me=1如果是初始化,将调用一个构造函数;如果不是,将调用operator=(int),如果me的类定义中没有operator=(int)或者int相关类型重载,将会调用带有一个int参数的构造函数构造一个临时对象,然后调用赋值操作符函数进行赋值
    me(1)如果是初始化,将会调用一个构造函数,如果不是初始化而且定义了operator()(),将会调用这个操作符函数

    2019-07-17 18:52:26
    赞同 展开评论 打赏
问答分类:
C++
问答地址:
问答排行榜
最热
最新

相关电子书

更多
使用C++11开发PHP7扩展 立即下载
GPON Class C++ SFP O;T Transce 立即下载
GPON Class C++ SFP OLT Transce 立即下载