Thinking in C++ Notes 函数重载与默认参数

  1. 两种数据类型:enum union(属性会在同一区域覆盖) http://www.cplusplus.com/doc/tutorial/other_data_type
    enum type{
    int property1;
    float property2;
    } var_name;
  2. C++通过名字修饰来实现重载。如foo(int) 和 foo(float) 编译的内部名可能为: foo_int, foo_float  不同编译器会有区别。通过这种方式也实现了类型安全连接(type safe linkage)
  3. 占位参数符,在定义中不使用标识符,如  void f(int x, int ,float flt) { /*    xxxx  */  }  在函数体中可以不适用第二个参数而不报错。后来发现不需要可以直接去除而不会产生警告。
  4. 使用默认函数参数还是重载? 在某些时候默认函数也能解决重载的需求。使用的评判标准如下:不能把默认参数作为标志位而去执行不同的逻辑,一个默认的参数应该是一般情况下存在的变量,只是默认值可能性更大。 因此,重载用于做不同的事情,而默认函数用于做同一件事的默认值。

转载于:https://my.oschina.net/edwardpku/blog/108013

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值