如果不需要在函数中修改实参:
如果实参很小,如C++内置数据类型或小型结构体,则按值传递,因为也不用担心拷贝花费太多时间;
如果实参是数组,则使用const指针,因为这是唯一的选择(没有数组建立引用的说法);
如果实参是较大的结构,则使用const指针或const引用;
如果实参是类,则使用const引用,传递类的标准方式是引用传递(类设计的语义经常要求使用引用);
如果需要在函数中修改实参:
如果实参是内置数据类型,则使用指针。例如函数调用时func(a)和func(&a)相比,还是func(&a)我们一眼就能看出函数将修改x;
如果实参是数组,则只能使用指针;
如果实参是结构体,则使用指针和引用;
如果是惨是类,则使用引用;
注意如果需要在函数中修改实参的话都是不能加const约束的,所以上面四点不能加;