gpt4 book ai didi

c++ - 在构造函数上传递参数或在每个方法上传递它们

转载 作者:太空狗 更新时间:2023-10-29 23:34:53 25 4
gpt4 key购买 nike

我正在学习 C++,我有这个头文件:

#ifndef _ROBOT_MOVE_H__
#define _ROBOT_MOVE_H__ 1

#include "ros/ros.h"

class RobotMove
{
private:
double current_linear;
double current_angular;
public:
void TurnLeft(const ros::Publisher& publisher, ros::Rate& loop_rate);
void TurnRight(const ros::Publisher& publisher, ros::Rate& loop_rate);
void TurnAround(const ros::Publisher& publisher, ros::Rate& loop_rate);
void Forward(const ros::Publisher& publisher, ros::Rate& loop_rate);
void Backward(const ros::Publisher& publisher, ros::Rate& loop_rate);
void Stop();

RobotMove();
~RobotMove();
}


#endif

我不知道是在构造函数上传递一次 const ros::Publisher& publisher, ros::Rate& loop_rate 还是每次调用其他方法时传递它们更好。

是在构造函数中传递这两个参数并在类中存储一个指针还是在每个方法中传递它们更好?

顺便说一句,这两个参数将始终是相同的对象。

最佳答案

By the way, the two parameter will be always the same objects.

对我来说,这表明它们应该是类的成员变量。使它们成为类的成员变量遵循 Don't Repeat Yourself (DRY) principle .因此,将它们传递给构造函数并让对象将它们存储为成员变量是有意义的。

关于c++ - 在构造函数上传递参数或在每个方法上传递它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57099920/

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