In file included from /home/wub/work/1_nzzn/2_code/13_LG/src/Drive/g29_ros2_feedback_drive/src/g29_ros2_feedback/src/joystick.cpp:34: /home/wub/work/1_nzzn/2_code/13_LG/src/Drive/g29_ros2_feedback_drive/src/g29_ros2_feedback/src/joystick.h: In constructor ‘Joystick_pub::Joystick_pub(const string&, const string&)’: /home/wub/work/1_nzzn/2_code/13_LG/src/Drive/g29_ros2_feedback_drive/src/g29_ros2_feedback/src/joystick.h:57:17: warning: ‘Joystick_pub::filename’ will be initialized after []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wreorder-Wreorder]8;;] 57 | std::string filename; // 设备文件名 | ^~~~~~~~ /home/wub/work/1_nzzn/2_code/13_LG/src/Drive/g29_ros2_feedback_drive/src/g29_ros2_feedback/src/joystick.cpp:39:41: warning:  base ‘rclcpp::Node’ []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wreorder-Wreorder]8;;] 39 | : filename(filename), Node(node_name) // 初始化成员变量 filename | ^ /home/wub/work/1_nzzn/2_code/13_LG/src/Drive/g29_ros2_feedback_drive/src/g29_ros2_feedback/src/joystick.cpp:38:1: warning:  when initialized here []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wreorder-Wreorder]8;;] 38 | Joystick_pub::Joystick_pub(const std::string &filename, const std::string &node_name) | ^~~~~~~~~~~~ /home/wub/work/1_nzzn/2_code/13_LG/src/Drive/g29_ros2_feedback_drive/src/g29_ros2_feedback/src/joystick.cpp: In member function ‘void Joystick_pub::publish()’: /home/wub/work/1_nzzn/2_code/13_LG/src/Drive/g29_ros2_feedback_drive/src/g29_ros2_feedback/src/joystick.cpp:160:22: error: no match for ‘operator=’ (operand types are ‘sensor_msgs::msg::Joy_ >::_buttons_type’ {aka ‘std::vector’} and ‘int’) 160 | message.buttons = heartbeat; | ^~~~~~~~~ In file included from /usr/include/c++/11/vector:72, from /usr/include/c++/11/functional:62, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /home/wub/work/1_nzzn/2_code/13_LG/src/Drive/g29_ros2_feedback_drive/src/g29_ros2_feedback/src/joystick.cpp:21: /usr/include/c++/11/bits/vector.tcc:198:5: note: candidate: ‘std::vector<_Tp, _Alloc>& std::vector<_Tp, _Alloc>::operator=(const std::vector<_Tp, _Alloc>&) [with _Tp = int; _Alloc = std::allocator]’ 198 | vector<_Tp, _Alloc>:: | ^~~~~~~~~~~~~~~~~~~ /usr/include/c++/11/bits/vector.tcc:199:42: note:  no known conversion for argument 1 from ‘int’ to ‘const std::vector&’ 199 | operator=(const vector<_Tp, _Alloc>& __x) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ In file included from /usr/include/c++/11/vector:67, from /usr/include/c++/11/functional:62, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /home/wub/work/1_nzzn/2_code/13_LG/src/Drive/g29_ros2_feedback_drive/src/g29_ros2_feedback/src/joystick.cpp:21: /usr/include/c++/11/bits/stl_vector.h:709:7: note: candidate: ‘std::vector<_Tp, _Alloc>& std::vector<_Tp, _Alloc>::operator=(std::vector<_Tp, _Alloc>&&) [with _Tp = int; _Alloc = std::allocator]’ 709 | operator=(vector&& __x) noexcept(_Alloc_traits::_S_nothrow_move()) | ^~~~~~~~ /usr/include/c++/11/bits/stl_vector.h:709:26: note:  no known conversion for argument 1 from ‘int’ to ‘std::vector&&’ 709 | operator=(vector&& __x) noexcept(_Alloc_traits::_S_nothrow_move()) | ~~~~~~~~~^~~ /usr/include/c++/11/bits/stl_vector.h:730:7: note: candidate: ‘std::vector<_Tp, _Alloc>& std::vector<_Tp, _Alloc>::operator=(std::initializer_list<_Tp>) [with _Tp = int; _Alloc = std::allocator]’ 730 | operator=(initializer_list __l) | ^~~~~~~~ /usr/include/c++/11/bits/stl_vector.h:730:46: note:  no known conversion for argument 1 from ‘int’ to ‘std::initializer_list’ 730 | operator=(initializer_list __l) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ gmake[2]: *** [CMakeFiles/g29_ros2_feedback_node.dir/build.make:90:CMakeFiles/g29_ros2_feedback_node.dir/src/joystick.cpp.o] 错误 1 gmake[1]: *** [CMakeFiles/Makefile2:137:CMakeFiles/g29_ros2_feedback_node.dir/all] 错误 2 gmake: *** [Makefile:146:all] 错误 2