c/c++
文章平均质量分 70
#君君#
这个作者很懒,什么都没留下…
展开
-
C++ 解析Json——jsoncpp
jsoncpp转载 2022-08-04 09:25:48 · 2097 阅读 · 0 评论 -
g2o入门
g2o是什么,能干什么g2o是一个通用的求解器,并不限定于某些SLAM问题。可以用图来表达的优化问题都能用g2o解决。基本步骤 在主程序运行之前:定义节点、边,包括内部的初始化函数、更新函数、误差计算函数、输入输出函数等等; 在主程序内部:实例化g2o求解器、选择迭代求解方式、实例化所使用的节点与边来逐步建立图模型、设置迭代次数并开始求解。节点,边节点可以认为是待优化的变量,边用来连接节点,且为误差项。库结构在这里插入图片描述 SparseOptimizer...转载 2022-03-16 15:24:13 · 2650 阅读 · 0 评论 -
tinyxml2之解析xml文件
tinyxml2是什么?tinyXML2是一个开源的解析XML的C++库,用于c++项目里面解析xml文件使用。下载地址:https://github.com/leethomason/tinyxml2 ,使用git直接将源码下载下来。测试demo地址(qt可以直接打开):最新2021年9月4日tinyxml2开源的C++XML文件解析库建立的qtpro工程测试+测试说明文档-C++文档类资源-CSDN下载使用方法:将下载的源码包里面的tinyxml2.h,tinyxml2.cp.转载 2022-03-14 19:24:28 · 1415 阅读 · 0 评论 -
cout输出格式打印--setw、setfill、left、internal、right、showpos、noshowpos
1、用cout的成员函数进行格式设置略2、用setiosflags函数设置相应控制位略3、直接用控制符设置(本人最习惯)直接用控制符设置除了以上两种方式外,为了更加便捷操作,可以直接使用控制符。控制符,也需要加上头文件#include 。可以如下实现:using std::cout;using std::endl;int nValue = 10;cout << std::setw(10) << std::setfill('*');cout转载 2022-03-14 15:38:00 · 4462 阅读 · 0 评论 -
浅谈 Linux C语言 socket 网络编程
注意:本文是按照 TCP、UDP的工作过程进行总结的 TCP套 socket 接口编程: 基于TCP的 客户/服务器(C/S)模式的工作过程如下: image 服务器进程中的一些函数: socket(): /* 函数所需头文件及其原型 */#include <sys/socket.h>int socket( int family, int type, int protocol);socketfd = soket(AF_INET, SOCK_STREAM转载 2022-03-05 15:11:00 · 502 阅读 · 0 评论 -
socket中accept()函数的理解
如果客户端有连接请求,必须使用下述函数来接受客户端的请求。 accept( SOCKET s, struct sockaddr FAR *addr, int FAR *addrlen); addr用于存放客户端的地址,addrlen在调用函数时被设置为addr指向区域的长度,在函数调用结束后被设置为实际地址信息的长度。本函数会阻塞等待知道有客户端请求到达。 返回值是一个新的套接字描述符,它代表的是和客户端的新的..转载 2022-03-05 14:27:24 · 378 阅读 · 0 评论 -
setsockopt()用法
快速浏览4条应用:1.数据收发时限设置struct timeva timeout;timeout.tv_sec=5;timeout.tv_usec=0;//接受时限setsockopt(serversocket, SQL_SOCKET,SO_RCVTIMEO, (char*)&timeout,sizeof(timeout));//发送时限setsockopt(serversocket, SQL_SOCKET,SO_SNDTIMEO, (char*)&time转载 2022-03-05 13:44:26 · 305 阅读 · 0 评论 -
fcntl设置文件的阻塞和非阻塞
1 获取文件的flags,即open函数的第二个参数:flags = fcntl(fd,F_GETFL,0);2、设置文件的flags:fcntl(fd,F_SETFL,flags);3、增加文件的某个flags,比如文件是阻塞的,想设置成非阻塞:flags = fcntl(fd,F_GETFL,0);flags |= O_NONBLOCK;fcntl(fd,F_SETFL,flags);4、取消文件的某个flags,比如文件是非阻塞的,想设置成为阻塞:flags = fcntl(fd,F转载 2022-03-05 11:33:14 · 1060 阅读 · 0 评论 -
Gcc编译选项-fno-builtin -fno-builtin-function
gcc有很多编译选项,要想一个一个看完,工程比较浩大,而且估计看完了也记不住,只能遇到一个记一个吧!(1)-fno-builtin:今天遇到一个问题,就是在定义函数的时候和C语言的内建函数重名了,导致编译的时候报错了:warning: conflicting types for built-in function ***平时一般都是想改改函数名不就得了,可突然冒出一个想法,能不能不改了,于是乎就发现了-fno-builtin这个选项。它的含义即不使用C语言的内建函数,用法如下:#...转载 2021-02-22 11:22:06 · 2611 阅读 · 0 评论 -
菱形继承产生的问题及解决
1.何为菱形继承?两个子类继承同一个父类,而又有子类又分别继承这两个子类,就如上图说示。 View Code产生的问题,会产生二义性问题,即对于baseClass的调用要说明作用域的情况: D *pd=new D; pd->B::a=1; pd->C::a=2; printf("%d\n",pd->B::a); printf("%d\n",pd->C::a);相当于baseClass在类中有两个,这可能不是我们想要的结果转载 2021-02-02 13:11:16 · 521 阅读 · 0 评论 -
C语言中“#“和“##“的用法
C语言中"#"和"##"的用法1. 前言使用#把宏参数变为一个字符串,用##把两个宏参数贴合在一起.2. 一般用法#include<cstdio>#include<climits>using namespace std;#define STR(s) #s#define CONS(a,b) int(a##e##b)int main(){ printf(STR(vck)); // 输出字符串"vck" printf(转载 2020-12-14 10:30:20 · 6324 阅读 · 0 评论 -
undefined reference to `__stack_chk_guard‘ .. undefined reference to `__stack_chk_fail‘
1. 编译出错undefined reference to `__stack_chk_guard'undefined reference to `__stack_chk_fail'解决方法-1:添加libssp库libssp包含支持GCC堆栈保护函数的程序解决方法-2 : disable gcc 编译参数 -fstack-protector-all(启用堆栈保护), 将编译配置的-fstack-protector-all 改为 -fno-stack-protector(禁用堆栈保护)..转载 2021-01-20 08:39:51 · 1286 阅读 · 0 评论 -
C++11之final关键字
-----------------------------------------------------------------------------一、禁用继承C++11中允许将类标记为final,方法时直接在类名称后面使用关键字final,如此,意味着继承该类会导致编译错误。实例如下: class Super final { //...... }; ------------------------------------------..转载 2020-10-07 08:56:18 · 340 阅读 · 0 评论