gpt4 book ai didi

c++ - 使用私有(private)方法设置类变量

转载 作者:行者123 更新时间:2023-11-28 06:48:16 25 4
gpt4 key购买 nike

比如说,我们有一个具有内部状态的类,实现为一个私有(private)变量和一个确定该状态的方法。使用方法设置变量的 oop-way 是什么:

class Car
{
..
private:
float speed_;
float calculate_optimal_speed();
..}

是制作一个函数 calculate_optimal_speed() 更好,它在其​​主体内返回变量 speed_ 还是一个 void set_speed() 方法?

比如说,我们有一个大方法 control_the_car()。什么是首选,并且在代码的进一步开发中会产生更少的问题:

float calculate_optimal_speed();
control_the_car()
{
..
speed_ = calculate_optimal_speed();
}

void set_optimal_speed();
control_the_car();
{
..
set_optimal_speed();
}

一方面,实现 set_optimal_speed() 允许更改 speed_ 变量的类型,而对代码的修改较少。另一方面,如果我再次需要它,返回一个值允许重新使用该函数。这里有经验法则吗?

最佳答案

Is there a rule of thumb here?

是的:编写满足您需求的最简单的实现。如果您以后需要不同的东西,请重构。

这意味着您可能应该使用 set_optimal_speed(); 实现,除非您需要计算不需要在类的私有(private)状态中设置的速度(如果需要,请创建一个返回速度的函数,然后根据此函数实现 set_optimal_speed();

关于c++ - 使用私有(private)方法设置类变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24530009/

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