c/c++
nedwons
这人很懒,啥也不懂。
展开
-
notes: Makefile,CMakeList.txt
not sure if it works fine.CC = g++CFLAGS = PROGRAM_NAME = cliLIBS = "-lncurses -lm -lsdl"DEPS = $(shell find ./ -name "*.hh")SRC = $(shell find ./ -name "*.cc")OBJ = $(SRC:%.cc=%.o) $(PROGRAM_NAME): $(OBJ) $(CC) $(CFLAGS) -o $(PROGRAM_NAME原创 2020-05-11 16:57:10 · 142 阅读 · 0 评论 -
(转)C++之左值、右值、左值引用、右值引用
C++之左值、右值、左值引用、右值引用讲挺清楚。转载 2020-04-30 15:42:15 · 236 阅读 · 0 评论 -
How C++ Works: Understanding Compilation
How C++ Works: Understanding CompilationThe Build Pipeline: Preprocess, Compile, and LinkHow Source Files Import and Export SymbolsHow Header Guards WorkPass by Value and Constness of Parameters...翻译 2020-04-29 17:42:59 · 102 阅读 · 0 评论 -
bug:总结
个人情况1.通常出问题的都是非法访问了不该访问的内存地址:如数组越界访问,double free,TODO:原创 2020-04-28 11:46:41 · 191 阅读 · 0 评论 -
bug:collect2: error: ld returned 1 exit status
undefined reference to `BNL_model::pkg_available(std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::hash<std::__cxx11...原创 2020-04-27 18:08:54 · 318 阅读 · 0 评论 -
c++:是否可以模板+多态 (template+virtual) ? -no
需求:某个基类有几个接口需要在子类中按需求自己定义,且此接口需在子类里各自重写。不好意思,翻车了model.hh:66:3: error: templates may not be ‘virtual’ virtual void create_sequencer (T& seqer) = 0;添加链接描述...原创 2020-04-27 11:52:20 · 1426 阅读 · 0 评论 -
bug:terminate called after throwing an instance of 'std::logic_error' what(): basic_string::_M_co
bug:terminate called after throwing an instance of 'std::logic_error' what(): basic_string::_M_construct null not validgdb看后发现:587471207Tue Apr 21 20:13:27 2020**************************loop ...原创 2020-04-21 20:58:06 · 1599 阅读 · 0 评论 -
notes: pointer's pointer **p
looper_type& selecte_looper(sequencer_type& seqer); looper_type* selecte_looper(sequencer_type& seqer,const std::string& looper_name); void update_sequencer_fullness(sequencer_t...原创 2020-04-14 18:16:30 · 144 阅读 · 0 评论 -
菜: multiple definition of XXX
把实现也写在.hh里会导致在其他.cc或.hh里包含此文件时报“ multiple definition of xxx”的错误;实现写到.cc就好了。原因:stofHere is a highly simplified but hopefully relevant view of what happens when you build your code in C++.C++ split...原创 2020-04-03 12:33:27 · 241 阅读 · 0 评论 -
cpp: show n history msgs implement with queue
void add_history(std::string input){ //package_vec_.push_back(input); current_package_ = input; history_queue_.push(input); if(static_cast<int> (history_queue_.size()) > config_param...原创 2020-04-03 11:42:07 · 101 阅读 · 0 评论 -
c++ : inherit base class
笔记,简单类的继承typedef struct event_info{ std::string event_name; std::string event_output;}event_info_t;class Event{public: Event(){}; ~Event(){}; virtual bool init() = 0; virtual void ...原创 2020-04-02 11:42:25 · 218 阅读 · 0 评论 -
c++11,字符串拼接 to_string
字符串+随机数字std::string package(){ srand((unsigned)time(NULL)); int suffix = rand(); std::string package_result = "package_"; package_result = package_result + std::to_string(suffix); std::cou...原创 2020-04-01 17:58:19 · 1050 阅读 · 0 评论 -
gk:简单的带颜色的log
暂时先这样,后面加文件和行号,再加打印参数#ifndef __DR_SIMPLE_LOGGER_HH__#define __DR_SIMPLE_LOGGER_HH__#include <iostream>#include <string> namespace logger { void logger(std::string log); v...原创 2020-03-30 11:14:01 · 219 阅读 · 0 评论 -
bug:shared_ptr不小心,导致的segmentation fault
1.声明:std::shared_ptr<des::Event> event_;2.定义:event_ = std::make_shared<des::Event>();原创 2020-03-27 15:15:20 · 1105 阅读 · 0 评论 -
json 以 vector ,queque或其他格式读取
end_ids_ = config_file_.at("end_id").get<std::vector<std::string>>(); recv_ids_ = config_file_.at("recv_id").get<std::vector<std::string>>(); interval= config_file_...原创 2020-03-24 11:19:57 · 741 阅读 · 0 评论 -
bug: std::thread可以放在结构体里?
std::thread 不算数据类型吗?vector,unorderred_map,struct里都不行。又到了知识盲区,,,原创 2020-03-04 16:43:20 · 234 阅读 · 0 评论 -
bug:collect2: error: ld returned 1 exit status
main.cc:92: undefined reference to DServer::DServer()'collect2: error: ld returned 1 exit statusMakefile:53: recipe for target 'D_server' failed重构的时候误删了:DServer::DServer(){}DServer::~DSer...原创 2020-01-15 15:11:48 · 391 阅读 · 0 评论 -
json: get a vector
std::vector<int> task_list_;std::string test_file = "etc/test.json";void init(std::string json_config_path){ std::ifstream json_input_filestream (json_config_path); if (!json_input_f...原创 2020-01-03 15:44:20 · 299 阅读 · 0 评论 -
Double equals 0 problem in C
Double equals 0 problem in CAsk QuestionAsked8 years, 11 months agoActive8 years, 11 months agoViewed17k times91I was implementing an algorithm to calculate natural logs in C....转载 2019-12-26 18:57:26 · 180 阅读 · 0 评论 -
bug: socket read() has be used in while?
size_t sz = socket_client->read_async (read_vector.data (), msg_size, -1, 0);read()卡住了。是的,因为你单调这个语句的那刻,socket里的数据已经过去了。没什么去保存或者说数据流在socket通道里停留。...原创 2019-12-26 12:07:50 · 119 阅读 · 0 评论 -
tool: gdb basic
b0x00007ffff6cf528d in nanosleep () at ../sysdeps/unix/syscall-template.S:8484 ../sysdeps/unix/syscall-template.S: No such file or directory.(gdb) b ParseSocketMessageFunction "ParseSocketMessa...原创 2019-12-26 12:00:21 · 191 阅读 · 0 评论 -
cpp: thread join(),detach()
What is different between join() and detach() for multi threading in C++?Ask QuestionAsked3 years, 7 months agoActive3 years, 5 months agoViewed18k times2215What is different be...转载 2019-12-25 15:32:28 · 489 阅读 · 0 评论 -
bugs: stupid makefile liborocos-kdl.so.1.4.0: No such file or directory
damn fuck makefile why so stupid:build error:g++: error: /usr/local/lib/liborocos-kdl.so.1.4.0: No such file or directoryfind this lib in your system:locate liborocos-kdl.so.1.4.0...原创 2019-12-20 15:13:00 · 275 阅读 · 0 评论 -
bug:error writing to /tmp/ccNxSD5s.s: No space left
atal error: error writing to /tmp/ccNxSD5s.s: No space left on device } ^reason: the program you compile is too big, and tmp not enoughmethod 1:https://blog.csdn.net/u010555688/article...原创 2019-12-19 18:51:03 · 825 阅读 · 0 评论 -
bugs:fatal error: nlopt.hpp: No such file
fatal error: nlopt.hpp: No such file or directory #include <nlopt.hpp>https://stackoverflow.com/questions/38332974/installing-nloptr-on-linux-fatal-error-nlopt-h-no-such-file-or-director...原创 2019-12-19 11:20:56 · 2798 阅读 · 1 评论 -
notes: cpp string to int
atiohttps://blog.csdn.net/hunter___/article/details/103595064int bin_id = atoi(bin_id_str.c_str());//bin_id string to intC++ int与string的相互转换(含源码实现)原创 2019-12-18 20:12:15 · 199 阅读 · 0 评论 -
notes: unordered_map:
https://blog.csdn.net/Cypress1010/article/details/53669409#include<unordered_map>std::unordered_map< std::string,std::vector<float> > bins_; // std::unordere...原创 2019-12-18 11:42:45 · 111 阅读 · 0 评论 -
bug: struct pointer
problem:出问题是因为忘了new 了,尴尬!!!!!!!具体用法:1.typedef struct request{ std::string message_type; int id; float x; float y;}reques_t;2.request_t *msg_to_r_ = nullptr;3.msg_to_r_ = ne...原创 2019-12-12 11:53:55 · 155 阅读 · 0 评论 -
bug: common ldl dlopen undefine
遇到一个奇怪的bug:A 报了dlopen undefine这种错误,但B 居然没有?最后大佬说是那个公共库的一个bug,问原因,只说代码覆盖率测试问题,,,显式链接和隐式链接的问题,可我还是不知道为什么?库里用dlopen的部分: grep -rn dlopensrc/dynamic_lib.cc:30: handle_ = dlopen(filename_.c...原创 2019-12-10 11:47:53 · 174 阅读 · 0 评论 -
tcp :server ,client 例子程序
TCP 简介https://blog.csdn.net/u013457167/article/details/79582924https://blog.csdn.net/u010889616/article/details/47159937https://blog.csdn.net/shanghairuoxiao/article/details/78536133...转载 2019-12-06 12:03:09 · 298 阅读 · 0 评论 -
note: c++ excute cmd
bool start_ros_related(){ std::ofstream out_roscore("/home/xxx/roscore.log",std::ios::app); FILE *pp_roscore = popen("roscore", "r"); if (!pp_roscore) { std::cout << "run ...原创 2019-12-05 16:50:27 · 116 阅读 · 0 评论 -
json dump
json常见用法-loads、dumps、load、dumppython的,,,,,我要c++的,,头文件源码: string_t dump(const int indent = -1, const char indent_char = ' ', const bool ensure_ascii = false) const { ...转载 2019-12-03 15:26:50 · 281 阅读 · 0 评论 -
how to use boost::bind
boost::bind 详解- zzhongcy的专栏boost::bind的使用转载 2019-12-03 14:59:26 · 106 阅读 · 0 评论 -
bug:error adding symbols: DSO missing from command
/usr/bin/ld: /tmp/ccB43b6E.o: undefined reference to symbol '_ZTVN5boost6detail16thread_data_baseE'//usr/lib/x86_64-linux-gnu/libboost_thread.so.1.62.0: error adding symbols: DSO missing from command...原创 2019-11-28 17:53:20 · 990 阅读 · 0 评论 -
boost: bind ,ref
https://blog.csdn.net/adcxf/article/details/3970116原创 2019-11-05 19:58:08 · 68 阅读 · 0 评论 -
rp : operator c++
C++的重载操作符(operator)介绍阅读数 2万+本文主要介绍C++中的重载操作符(operator)的相关知识。1.概述1.1whatoperator是C++的一个关键字,它和运算符(如=)一起使用,表示一个运算符重载函数,在理解时可将operat...博文来自: liitdar...原创 2019-10-17 17:06:22 · 116 阅读 · 0 评论 -
THE compile of serveral files
编译多文件写一个Makefile文件,如下:SOURCE = tree.c tree_fun.c DEST = mainGCC = gccFLAGS = a转载 2017-09-27 15:52:38 · 223 阅读 · 0 评论 -
the study of makefile(1-4)
the original blog :study makefile with me 1study makefile with me 2study makefile with me 3study makefile with me 4跟我一起写 Makefile 陈皓概述——什么是makefile?或许很多Winodws的程序转载 2017-09-28 09:36:45 · 427 阅读 · 0 评论 -
LOG IN ANDROID
thanks to the author :http://blog.csdn.net/liuxd3000/article/details/137681411、 目的:为了规范软件工程师在android代码编写过程中输出Log的行为,使得发布的产品中打印的Log是必须的,打印的Log的级别是能真实反映此Log对应的级别,标签、Log内容具有很好的可读性。2、 适用范围android平台java、...转载 2018-03-06 15:09:03 · 184 阅读 · 0 评论 -
搬砖:c语言中realloc()函数解析
c语言中realloc()函数解析https://blog.csdn.net/hackerain/article/details/79540062012年09月07日 10:51:49 hackerain 阅读数:53134 标签: numbers 语言 c ubuntu null input 更多个人分类: 操作系统/Linux 真是有点惭愧,这些内容本应该很早就掌握的,以前只...转载 2019-03-19 21:01:37 · 666 阅读 · 0 评论