static_cast 与 reinterpret_cast
1. static_cast 编译时类型检查 只允许安全的、有意义的类型转换 会进行必要的类型转换计算 static_cast不能用于在不同类型的指针之间互相转换,也不能用于整型和指针之间的互相转换。 示例: // 数值类型转换 int i = 42; double d = static_cast<double>(i); // 基类与派生类之间的转换(向...
1. static_cast 编译时类型检查 只允许安全的、有意义的类型转换 会进行必要的类型转换计算 static_cast不能用于在不同类型的指针之间互相转换,也不能用于整型和指针之间的互相转换。 示例: // 数值类型转换 int i = 42; double d = static_cast<double>(i); // 基类与派生类之间的转换(向...
现代C++模板教程 github – Modern-Cpp-templates-tutorial 现代C++模板教程 C++ Templates 2ed github – Cpp-Templates-2ed Cpp-Templates-2ed github – CppTempla...
if(WIN32 AND NOT UNIX) get_target_property(qmake_executable Qt6::qmake IMPORTED_LOCATION) get_filename_component(_qt_bin_dir "${qmake_executable}" DIRECTORY) find_program(WINDEPLOYQT_E...
1. export 导出一个库 export命令用于导出一个库,导出的库可以被其他项目使用。如下cmake命令生成库gcFactSystem,并导出库以及库的头文件(使用PUBLIC)。 set(target_name "gcFactSystem") # compile library gcFactSystem # export library gcFactSystem to gcFa...
以心跳包为例,消息格式定义在common.xml中。 1. 打包 心跳包的打包函数为mavlink_msg_heartbeat_encode,将heartbeat作为msg的payload,并计算MAVLink消息的其余域,即完成填充所有内容到msg中。 static inline uint16_t mavlink_msg_heartbeat_encode(uint8_t system...
1. MAVLink v2 协议 MAVLink协议格式文档:Packet Serialization 1.1. MAVLink协议格式重要字段 MAVPACKED( typedef struct __mavlink_message { uint16_t checksum; ///< sent at end of packet uint8_t mag...
1. 资料 1.1. QGC使用入门资料 X-Mav QGroundControl快速上手指南 翼辉 QGroundControl 官方user guide 官方dev guide 1.2. QGC优化 PR: QML: Various easy optimizations 1.3. 界面相关资料 github FluentUI QianWi...
1. 多继承–无虚拟继承 class Base1 { public: int a; int b; }; class Base2 { public: int c; int d; }; class Derive : public Base1 , public Base2 { public: int e; int f; }; 内存布局顺序为:B...
1. 预编译及安装的三方库 zlib freeType FreeImage 1.1. freeType freeType在Windows下编译成动态库,需要做些修改: 根目录下CMakeLists.txt: # add_library(freetype .... add_library(freetype SHARED ... ) freeType编译之后,...
# https://sysstat.github.io/ sudo apt-get install sysstat sudo dpkg-reconfigure sysstat # select "Yes" sar(System Activity Reporter 系统活动情况报告)是目前Linux上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系...