gpt4 book ai didi

c++ - 良好做法 : To Modify Only Function Parameters?

转载 作者:太空狗 更新时间:2023-10-29 20:07:00 28 4
gpt4 key购买 nike

比如说,我开发了一个复杂的应用程序:在对象成员函数中,我应该只修改那些作为参数传递给成员函数的对象,还是我可以访问和修改我有权访问的任何其他对象(比如公共(public)或静态对象)?

从技术上讲,我知道可以修改我有权访问的任何内容。我问的是良好做法

有时,将我将访问和修改的所有内容作为参数传递是很麻烦的,尤其是当我知道对象成员函数不会被除我以外的任何其他人使用时。谢谢。

最佳答案

全局状态从来都不是一个好主意(尽管它有时更简单,例如日志记录),因为它引入了接口(interface)中未记录的依赖关系并增加了组件之间的耦合。因此,应该不惜一切代价避免修改全局状态(例如 static 变量)。 注意:全局常量完全没问题

在 C++ 中,您可以使用 const 关键字来记录(并让编译器强制执行)可以修改的内容和不能修改的内容。

const 方法保证对象的可见状态不会被触及,通过 const 引用或值传递的参数也不会被触及。

只要它被记录下来,就很好......你应该努力在你的类接口(interface)中使用尽可能少的非const方法和尽可能少的非const 方法中的参数。

关于c++ - 良好做法 : To Modify Only Function Parameters?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5093188/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com