当你写这种函数的时候,随时明确自己的目的,“我希望两个参数是能够被修改的”,那么,先写调用点代码swap(&a, &b),然后返回头写函数原型swap(int* a, int* b),现在,就很清楚swap()函数的代码怎么写了,里面a、b明显是指针!
为什么要用指针呢?因为当你要修改参数原本内容的时候,最好不要将原本内容复制到函数中,因为那些数据可能非常大,例如数组或某些大结构体,复制参数是可能导致栈溢出的,所以不复制,直接用指针处理原本。
写任何一行代码时都要记住:目标是什么?
[
本帖最后由 TonyDeng 于 2011-8-19 08:02 编辑 ]