- 博客(21)
- 资源 (1)
- 问答 (8)
- 收藏
- 关注
原创 STL源码分析
右值引用传递给其他函数时,会丢失右值引用属性,为了解决这个问题,c++模板提出了万能引用(采用引用折叠技术)用于去掉变量的引用属性(左值引用和右值引用),但不会去掉const属性。用于将输入参数类型转换为模板参数类型。
2024-05-03 12:44:21
237
原创 ros使用
ros命令工具 rqtgraph 通过图形显示系统信息,包括节点和节点之间的话题 rosnode 查询节点相关信息 rostopic 查询话题相关信息,可以发布数据 加pub -r可指定循环频率 rosmsg 查询消息数据结构(话题相关) rosservice 服务相关,可以发送服务请求 比如创建另一个海归 rosservice call /spawn rossrv show rosbag 录制轨迹数据(rosbag record -a -O cmd_record)把当前所有数据保存至cmd_record)
2022-04-01 19:01:26
486
原创 Effective C++知识点
条款01:视C++为一个语言联邦(View C++ as a federation of languages.) 对于内置类型而言,pass-by-value通常比pass-by-reference高效; 对于用户自定义的类,pass-by-reference-to-const往往更好,对于TemplateC++时尤其如此; 对于迭代器和STL中的函数对象,pass-by-value守则再次适用。 条款02:尽量以const,enum,inline替换#define(Pr.
2022-01-08 15:35:50
1714
原创 qmake 4.8使用
本文翻译自Qt 4.8官方文档。 一、QMake使用 QMake提供了一个用于管理应用程序、库、其它组件的构建过程的面向工程系统。 QMake扩展了每个工程文件的信息,生成一个执行编译和链接过程的必须命令的MakeFile。 1、描述工程 工程文件.pro描述了工程信息。工程文件信息会被qmake用于生成包含构建过程中所需的所有命令的MakeFile。工程文件通常包含一系列头文件和源文件,通用配置信息以及音乐程序指定的细节,如应用程序的链接库、搜索路径。 ...
2021-07-09 20:03:53
427
原创 pro文件与pri文件的使用
所有的pro文件都添加一个和自己同名的pri文件,该文件中只放置一行用于添加自己本身的库的语句,让其他使用本模块的模块引用。其他模块中不要在pro文件中INCLUDEPATH所有需要用到的头文件路径,而是在需要使用的pri文件中添加所需要的路径 ...
2021-07-08 08:36:56
896
转载 Qt架构设计
(一)通用规则 除了极小的微型demo级别项目外,其余项目建议用pri分门别类不同文件夹存放代码文件,方便统一管理和查找。 同类型功能的类建议统一放在一起,如果该目录下代码文件数量过多,也建议拆分多个目录存放。 比如就3-5个界面的项目,统一搞个form.pri存放这些界面,而当项目越来越大,界面可能也需要按照功能划分,比如系统配置的窗体放在一个目录下,日志管理的窗体放在一个目录下。 很多通用功能,多个项目都会用到,可以考虑封装成pri形式的模块,俗称轮子,不断完善这些轮子,多个项目共享该模块,一旦遇到BU
2021-07-04 09:55:45
1165
原创 QT 单例模式
#ifndef SINGLETON_H #define SINGLETON_H #include <QObject> #include <QMutex> class SingleTon : public QObject { Q_OBJECT private: explicit SingleTon(QObject *parent = 0); ~SingleTon(); public: static SingleTon* instance(); pr.
2021-07-04 01:19:23
198
原创 qt数据库移除连接报错的原因
/**************************************************************************** ** 数据库连接管理 ****************************************************************************/ #ifndef SQLDATABASE_H #define SQLDATABASE_H #include <QObject> #include <QSql.
2021-06-29 15:55:41
578
原创 QT消息机制源码解析
#include "mainwindow.h" #include <QApplication> int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; w.show(); return a.exec(); }
2021-06-14 13:45:17
428
原创 空间与效率
假设你正在写一个自动测速程序,当汽车通过,其速度便被计算并填入一个速度收集器内: class SpeedDataCollection { ... public: void addValue(int speed); //添加一笔新数据 double averageSoFar() const; //返回平均速度 ... }; ...
2021-06-13 23:49:12
238
原创 c++临时对象不能绑定到非const引用
class A { public: int a,b; }; ostream& operator <<(ostream &cout,const A &a) { cout<<a.a<<a.b; return cout; }
2021-06-13 22:04:46
294
原创 c语言接口设计
当多个接口共用一个参数时,可以把参数提取出来,放到一个单独的接口中,如 drawRectangle(const Pen &p); drawCircle(const Pen &p) drawTe
2021-06-10 13:35:03
809
原创 gcc编码原理
GCC编译选项: -finput-charset:输入字符集设置(需要和源文件编码一致),告诉编译器以什么样的编码形式读入源文件中的字符串, -fexec-charset:执行字符集设置(需要设置为当前运行环境支持的编码),告诉编译器在内存中以什么样的编码形式保存字符串 -fwide-exec-charset:宽字符执行编码(在windows下应设置为utf-16LE),告诉编译器在内存中以什么样的编码形式保存宽字符串。 以windows为例,详细介绍下c程序在执行过程中,编码方式转换的流程: 首
2021-05-24 22:56:15
1112
原创 为什么while(1)在windows程序中会卡死
Windows采用消息机制,每个窗体有一个消息线程,用于响应用户事件(鼠标、键盘等),也就是一个消息队列。 在一个事件里使用While(1)相当于把消息线程阻塞了,后面的消息一直卡在消息队列里,卡到一定程度,就界面就停止响应了。 有一个技巧,就是在while(1)里插入一行处理windows消息的语句,相当于释放一下CPU让消息线程继续跑一跑,这样就不会卡死了。 ...
2021-04-21 13:39:48
2224
原创 c++中cout的输出顺序
#include <iostream> using namespace std; class A { public: int calcuA(); int calcuB(); }; int A::calcuA() { cout<<"A"<<endl; return 10; } int A::calcuB() { cout<<"B"<<endl; return 12; } int main(int.
2021-03-23 13:14:41
514
原创 c++中的float转int存在误差的解决方法
当一个float数转转成int型数据时,有时会存在1误差,如图: float a = 10000; float b = 0.01; int c = a * b; qDebug()<< c;//结果为99 解决方法:通过一个float型的中间变量存储计算结果,再转换成int float a = 10000; float b = 0.01; float temp = a * b; int c = temp; qDe
2021-03-21 13:59:10
1197
原创 关于Qt样式表不生效的问题
1、在当前类样式表为空的情况下,提升控件后在提升类中设置样式表不生效。 原因:之前在当前类中设置过样式表数据(当前类属性框中的stylesheet为粗体!),虽然为空但仍然覆盖了提升类中的样式表数据,如图。 解决方法:点击还原按钮,还原当前类中的样式表数据为未设置状态 2、当提升类为QWidget时,上述方法仍不生效。 原因:官方明确说明,当控件从QWidget子类化时,需要提供paintEvent函数。 解决方法: void CustomWidget::p...
2021-03-19 08:49:05
4119
使用枚举类型 还是扩展api接口
2021-06-26
Qt 提升部件无法传递参数
2021-06-25
三层架构中的传参问题
2021-06-19
CM_Request_Device_Eject_Ex 移除usb根集线器失败
2021-05-31
使用windows api报错
2021-05-29
包含了windows.h 还是报错,哪位大神能帮我解决下
2021-05-27
如何在windows系统中模拟usb插拔
2021-05-26
c语言内存中栈与堆的问题
2017-10-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1