c++
Believe yourself!!!
须知少年凌云志,曾许人间第一流
展开
-
C++语法2
C++语法记录2原创 2022-12-06 10:29:42 · 526 阅读 · 0 评论 -
C++语法琐碎记录
C++语法记录原创 2022-12-06 10:28:26 · 399 阅读 · 0 评论 -
数据结构——顺序表的链式操作
数据结构链式操作原创 2022-12-06 10:23:06 · 188 阅读 · 1 评论 -
数据机构——顺序表的基本操作
数据结构线性表的基本操作原创 2022-11-28 18:52:23 · 153 阅读 · 0 评论 -
C++万能头文件
# include <bits/stdc++.h>写上这个头文件后就不需要在写# include <iostream>、string、list、vector等的包涵了。下面是这个头文件的详细信息:// C++ includes used for precompiling -*- C++ -*-// Copyright (C) 2003-2014 Free Software Foundation, Inc.//// This file is part of t..原创 2022-03-25 22:38:44 · 3068 阅读 · 0 评论 -
配置Vscode实现ROS编写
第一步:下载必要的插件第二步:配置编译快捷键先Ctrl+P调出文档tasks.json{ "version": "2.0.0", "tasks": [ { "label": "catkin_make: build", "type": "shell", "command":"catkin_make", "args": [], "group":{"kind": "build","isDefault": true}, "presentation原创 2022-01-05 18:08:30 · 471 阅读 · 0 评论 -
ROS——创建工作空间
第一步:创建一个文件夹:第二步:在文件夹下创建一个src文件夹:第三步:在src下面创建功能包:catkin_create_pkg 功能包名 roscpp rospy std_msgs第四步:回到根目录下进行编译:catkin_make第五步:配置一下环境依赖:vi ~/.bashrc进入到文档中,在输入E进入编辑模式,输入a开始编辑,编辑完成后输入Esc退出编辑模式,输入Shiht+t+t 保存并退出source ~/.bas.原创 2022-01-14 10:08:25 · 627 阅读 · 0 评论 -
C++内存分区模型
程序在运行的过程中是会被加载到内存中的,一个程序可能会存在不同的功能块,所以不同区域存放的数据,赋予不同的生命周期, 给我们更大的灵活编程C++的程序会在内存中分为四大块: 代码区:存放函数体的二进制代码,由操作系统进行管理的 全局区:存放全局变量和静态变量以及常量 栈区:由编译器自动分配释放, 存放函数的参数值,局部变量等 堆区:由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收代码区 程序编译后是一个二进制的文件,这个二进制的文件便会放在代...原创 2021-09-01 16:49:58 · 95 阅读 · 0 评论 -
ROS遇到的问题“The target name “test“ is reserved when CTest testing is enabled”.
原因:test是某些cmake特性保留的关键字,cpp文件不能起名为test.cpp,可以改为test1.cpp原创 2021-09-01 11:06:29 · 1516 阅读 · 0 评论 -
机器人导航
一、SLAM建图<launch> <arg name="use_map_topic" default="false"/> <arg name="scan_topic" default="scan"/> <node pkg="amcl" type="amcl" name="amcl" clear_params="true"> <param name="use_map_topic" value="$(arg u原创 2021-09-01 11:04:29 · 181 阅读 · 0 评论 -
机器人仿真
一、URDF1.link标签<link name="***">----为连杆命名 <visual>-----描述外观 <geometry>------设置连杆的形状 <box size="长 宽 高" />------长方形 <cylinder radius="半径" length="高度" />-----圆柱型 <sphere radi原创 2021-08-27 17:56:09 · 111 阅读 · 0 评论 -
Gazebo中编译功能包时的错误
解决办法:在终端中输入以下命令即可sudo apt-get install ros-kinetic-gazebo-ros-pkgs ros-kinetic-gazebo-ros-control原创 2021-08-27 17:01:11 · 200 阅读 · 0 评论 -
ROS常用组件
一、tf坐标变换1.静态坐标变换功能实现:发布一个基坐标和子坐标,指明二者关系,在任意给一个相对子坐标的坐标,换算出他相对基坐标的坐标值。第一步:创建功能包catkin_create_pkg tf01_static roscpp rospy std_msgs tf2 tf2_ros tf2_geometry_msgs geometry_msgs第二步:CMakelist文件编写cmake_minimum_required(VERSION 3.0.2)project(tf01_s原创 2021-08-26 20:21:22 · 574 阅读 · 0 评论 -
sscanf()和sprintf()函数
一、sscanf()函数# include <iostream># include <string>using namespace std;int main (){ //%*d跳过数据 string str1="12345abcde"; string str2; sscanf(str1,"%*d",str2); cout<<str2<<endl;//输出abcde sscanf(str1,"%*原创 2021-08-26 15:49:24 · 94 阅读 · 0 评论 -
ROS通信——C++实现
一、普通话题通信二、自定义话题通信原创 2021-08-26 15:48:58 · 2169 阅读 · 0 评论 -
ROS深入
一、ros::init()ros::init(argc, argv, "publish", ros::init_options::AnonymousName);第一个参数:终端输入参数的个数,例如输入"rosrun ** ** 100 200",则argc为3.第二个参数:以数组的形式保存终端输入的命令,例如输入"rosrun ** ** 100 200",则argv[0]为当前所执行的文件,argv[1]为100,argv[1]为200。第三个参数:节点发布时的名字第四个参数:原..原创 2021-08-26 15:48:29 · 579 阅读 · 0 评论 -
ROS运行管理机制
阿原创 2021-08-26 15:47:35 · 197 阅读 · 0 评论 -
ros中小乌龟相关的命令
1、小乌龟启动指令rosrun turtlesim turtlesim_node2、键盘控制指令rosrun turtlesim turtle_teleop_key原创 2021-08-26 10:26:49 · 659 阅读 · 0 评论 -
报错“stray ‘\357’ in program”
原因:输入类中文的标点符号原创 2021-08-26 15:47:59 · 398 阅读 · 0 评论 -
ROS常用命令
一、rosnode命令命令 含义 rosnode list 显示当前运行的节点 rosnode ping 节点名 测试节点是否正常工作 rosnode info 节点名 显示节点的详细信息 rosnode machine 设备名 显示某一台设备上的运行的节点 rosnode kill 节点名 结束某一个节点 二、rostopic命令命令 含义 rostopic list 显示当前运行的话题 rostopic echo .原创 2021-08-24 20:20:15 · 94 阅读 · 0 评论 -
解决ROS输出中文时的乱码问题(只能在ROS中使用)
解决方案:在函数的开头加入下面的代码的任意一句即可setlocale(LC_ALL, "")setlocale(LC_CTYPE, "zh_CN.utf8")原创 2021-08-23 21:13:46 · 1703 阅读 · 0 评论 -
stringstream常见用法介绍
一、数据类型转换这里展示一个代码示例,该示例介绍了将 int 类型转换为 string 类型的过程。示例代码如下:#include <string>#include <sstream>#include <iostream>#include <stdio.h> using namespace std; int main(){ stringstream sstream; string strResult; int原创 2021-08-23 20:13:17 · 735 阅读 · 0 评论 -
OpenCV中的RNG随机函数用法
一、产生一个随机数# include "opencv2/opencv.hpp"using namespace cv;int main (){ RNG rng; int a=rng;//产生一个随机数 return 0;}二、产生范围的随机数# include "opencv2/opencv.hpp"using namespace cv;int main (){ RNG rng; int a=rng.uniform(1,10);//原创 2021-08-16 16:06:00 · 1113 阅读 · 0 评论 -
sprintf()函数和sscanf()函数
qq原创 2021-08-10 21:56:41 · 104 阅读 · 0 评论 -
ROS下使用OpenCV时的环境配置
在CMakeLists.txt末尾加上:find_package(OpenCV)include_directories(${catkin_INCLUDE_DIRS} ${OpenCV_INCLUDE_DIRS})add_executable(talker src/talker.cpp)target_link_libraries(talker ${OpenCV_LIBS})target_link_libraries(talker ${catkin_LIBRARIES})...原创 2021-08-10 20:57:21 · 891 阅读 · 0 评论 -
OpenCV学习笔记
Mat image;image.empty();//判断是否为空image.rows;//获取图像行数image.cols;//获取图像列数image.channels();//获取图像通道数image.depth();//获取图像位深度VideoCapture vc;vc.open();//打开视频文件或者摄像头文件vc.isOpened();//判断视频是否正确打开vc.release();//释放视频...原创 2021-08-10 20:54:02 · 1734 阅读 · 0 评论 -
C++运算符重载
一、+号运算符重载# include <iostream>using namespace std;class student{ public: int age; int weight; //第一种方法:成员函数 // student operator+ (student stu)// {// student stu1;// stu1.age=stu.age+age;// stu1.weight=stu.weight+weigh原创 2021-08-09 19:16:58 · 89 阅读 · 0 评论 -
Devc++如何实现多行同时注释
方式:Ctrl+/ 实现多行同时注释,再次Ctrl+/实现取消注释原创 2021-08-09 15:39:21 · 4863 阅读 · 0 评论 -
STL之算法
一、for_each()遍历算法# include <iostream># include <vector># include <algorithm>using namespace std;void printf_01 (int a){ cout<<a<<" ";}class printf_02{ public: void operator ()(int a) { cout<<a<原创 2021-08-08 21:10:50 · 122 阅读 · 0 评论 -
STL内建函数对象
一、算数仿函数# include <iostream># include <functional>//使用这个必须包涵头文件using namespace std;int main (void){ plus<int>p;//加法 cout<<p(1,2)<<endl; negate<int>q;//取反 cout<<q(10)<<endl; minus<int>m;原创 2021-08-07 22:04:56 · 44 阅读 · 0 评论 -
谓词的简介
一、一元谓词//函数对象(仿函数)返回值为bool类型时,仿函数称为“谓词” # include <iostream># include <vector># include <algorithm>using namespace std;class compare{ public: bool operator ()(int i)//只有一个参数称为“一元谓词” { return i>5; } };int main (原创 2021-08-07 21:28:24 · 112 阅读 · 0 评论 -
函数对象(仿函数)
基本用法:# include <iostream># include <string>using namespace std;//第一种用法:函数对象(仿函数)在使用时可以向普通函数那样有返回值,形参等class student{ int operator()(int a,int b) { return a+b; }};int main (void){ student stu; cout<<原创 2021-08-07 20:47:11 · 70 阅读 · 0 评论 -
C++随机数
模板:# include <iostream># include <ctime> //time()函数所在库(或者"time.h")# include <stdlib.h> //rand()函数和srand()函数所在库using namespace std;int main ( ) { //srand()函数传入一个随机种子,将time()时间函数作为随机种子保证每次数值不一样 //srand()函数程序中只需运行一次即可 srand ( t原创 2021-08-26 15:49:54 · 35 阅读 · 0 评论 -
STL容器总结
一、vector(相当于数组,但可以动态分配空间)1.vector的构造函数(1)直接构造# include <vector>vector<int> v;(2)# include <vector>vector<int> v2(v1.begin(),v1.end());//将v1全盘复制给v2(3)# include <vector>vector<int> v(10,100);//在v中插入10个1原创 2021-08-06 17:57:29 · 241 阅读 · 0 评论 -
Signal ()函数详细介绍
一、功能对某一信号进行相应的反应 二、用法(1)包含头文件# include <signal.h>(2)函数原型signal(参数一,参数二 );(3)参数解释参数一:一般情况下是SIGINT,由Interrupt Key产生,通常是CTRL+C或者DELETE。发送给所有ForeGround Group的进程参数二:有三种情况1.(1)SIG_IGN 这个符号表示忽略该信号。#include <iostream&...原创 2021-08-06 15:46:30 · 3165 阅读 · 0 评论