【发布时间】:2017-07-12 13:49:32
【问题描述】:
当我编写一个类方法并想将参数传递给这个方法时,我经常想知道什么被认为是“更好的”。
-
选项:使用成员变量
class Foo { public: int x, y, result; void SomeMethod() { x = 4; y = 10; AddMethod(); } void AddMethod() { result = x + y; } } -
选项:传递参数
class Foo { public: int result; void SomeMethod() { result = AddMethod(4, 14); } int AddMethod(int x, int y) { return (x + y); } }
就我个人而言,我通常倾向于使用第二个选项,因为对我来说它更具可读性和可理解性。使用一个或另一个代码的正确理由是什么?
【问题讨论】:
-
它是对象状态的一部分还是仅在该单个成员函数的上下文中使用?
-
恕我直言,你的例子不是最好的,因为你在做什么我根本不会写一个类
-
这类问题没有一个答案。这一切都取决于情况,而你没有表现出来。我理解这是因为您想要一个关于如何编程的通用指南,但没有任何指南 - 您必须考虑并考虑每种情况下的情况并根据论据做出决定。
-
@slawekwin 是的,我正在寻找一些通用指南。但是“对此没有一般指导方针”,也是一个答案,这对我有帮助。即使你这个问题肯定没有非常积极的共鸣,谢谢你的回复。