Jay*_*Jay 11 c parameters function
我已经看到了一些代码,其中通过值传递给函数的参数被修改或分配了一个新值,并且被用作局部变量.
这样做好吗?这样做是否存在任何陷阱,或者这样编码是否可以?
本质上,函数的参数是局部变量,因此这种做法原则上并不坏.
另一方面,这样做可能会导致维护问题.如果另一个程序员稍后出现,他可能希望变量保持传入的值,并且更改将导致错误.
重用变量的一个理由是误导了内存使用效率的概念.实际上,它无法提高效率,并且可以降低效率.原因是编译器可以自动检测在两个不同的时间对两个不同的变量使用相同的寄存器是否有用,并且如果它更好则会这样做.但是程序员不应该为编译器做出决定.这将限制编译器可以做出的选择.
最安全的做法是在需要新值时使用新变量,并依赖编译器使其变得高效.
| 归档时间: |
|
| 查看次数: |
2494 次 |
| 最近记录: |