c++
面-包
IT大菜鸡
展开
-
记录出现错误: invalid use of non-static member function
非静态成员函数的使用无效出现原因:回调函数的指针类型为void(*)解决办法:在该函数前加上static关键字class MqttClient { public: MqttClient(std::string host, int port, std::string username, std::string password, bool subscribe); std::string GetSubscribeMessage(); private: std::string host_;原创 2021-02-02 14:45:57 · 7811 阅读 · 0 评论 -
C++ 并发指南-atomic 指针的使用(三)
单个的double,int,或者struct 无法满足线程间的通信------ 需要使用 std::atomic<Mynt_d*> mynt_data;1、先定义struct \ classstruct Mynt_farme_data{ double img_time; cv::Mat imLeft,imRight; std::vector<ORB_SLAM3::IMU::Point > imu;};class Mynt_d{public:原创 2020-09-11 21:34:15 · 3131 阅读 · 0 评论 -
PID控制器C++实现
PID参数调节口诀参数整定找最佳, 从小到大顺序查。先是比例后积分, 最后再把微分加。曲线振荡很频繁, 比例度盘要放大。曲线漂浮绕大弯, 比例度盘往小扳。曲线偏离回复慢, 积分时间往下降。曲线波动周期长, 积分时间再加长。曲线振荡频率快, 先把微分降下来。动差大来波动慢, 微分时间应加长。理想曲线两个波, 前高后低四比一。一看二调多分析, 调节质量不会低。增量式PID controller实现#include <iostream>#include<cmath>原创 2020-08-25 11:28:56 · 9703 阅读 · 0 评论 -
C++ 并发指南-atomic原子变量使用struct(二)
错误:在函数‘std::atomic::store(Test, std::memory_order)’中:/usr/include/c++/5/atomic:225:对‘__atomic_store’未定义的引用#include <atomic>#include <iostream>#include <thread>#include <ctime>struct Test{ int a; double b; int c[100原创 2020-07-20 14:34:02 · 10734 阅读 · 0 评论 -
C++ 并发指南-atomic原子变量使用struct(一)
http://www.cplusplus.com/reference/atomic/atomic_store/#include <iostream> // std::cout#include <atomic> // std::atomic_flag#include <thread> // std::thread...原创 2020-05-02 01:31:40 · 13211 阅读 · 4 评论 -
常用的几种算法-记录纪律
#include <iostream>#include <stdlib.h>using namespace std;/*********1***********/const int N_limit = 2;int value_lim = 50;/*********2**********/const int N_mid = 11;/*********3***...原创 2020-05-02 00:22:57 · 9657 阅读 · 0 评论 -
串口接收16进制,最后保存成char*
serial.cpp中的接收:serial_read(std::string &rcv_buf) { unsigned char msg; int ret, pos=0; char mn[2]; tcflush(serial_fd_, TCIOFLUSH);//清掉串口缓存 fcntl(serial_fd_, F_SETFL, 0); ...原创 2020-01-20 11:04:16 · 10362 阅读 · 0 评论 -
Pangolin使用的基础代码
Pangolin使用——基础代码 #include<iostream> #include<pangolin/pangolin.h> int main(int argc,char **argv) { //新建一个窗口 pangolin::CreateWindowAndBind("Main",640,480); ...原创 2020-01-06 18:03:08 · 13442 阅读 · 0 评论 -
状态机的实现和具体c++代码
State状态模式(一)概念允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况。把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化。状态模式的主要解决的是,当控制一个对象状态转换的条件表达式过于复杂时的情况。把状态的判断逻辑转移到表示不同状态的一系列类当中,可以把复杂的判断逻辑简化。...原创 2019-12-23 16:43:13 · 10609 阅读 · 0 评论 -
Process finished with exit code 139 (interrupted by signal 11: SIGSEGV)
Process finished with exit code 139 (interrupted by signal 11: SIGSEGV)exit code 139 : 数组访问越界,可能是内存溢出,可能和shared_ptr的使用有关……解决方案:断点查询bug出现的位置,缩小范围,大部分原因可能是数组访问越界...原创 2019-12-20 10:14:19 · 33535 阅读 · 0 评论