总结:
talker:
首先是头文件,然后主函数中定义节点话题,最后在循环中不断发送数据
中间有地方少了括号,报错可能也会显示说最后一句少括号。
如果报错Invoking “make -j4 -l4” failed,这也可能是代码有问题,网上找错误的文件,发现果然char写成chat,还少了一个分号。
在cmakelist中生成可执行文件的时候填写的只是可执行文件名,同时也是运行节点时最后一个名字。但是不是节点名,从rosnode list可以看出,真正的节点名还是在node定义代码中定义的talker而不是可执行文件名talker1。
如果想要中止节点后还能在同一终端输入指令,需要敲ctrl+z,而不是ctrl+c(订阅者可以)。
listener:
首先是头文件,然后定义回调函数,最后再运行主函数,注意里面不需要while。