随笔分类 - C++
摘要:RVO (Return Value Optimization) 指的是当函数返回一个临时对象时,编译器会尝试直接将这个临时对象构建在调用者提供的存储空间中, 而不是先创建一个临时对象再进行复制。这样就可以避免一次复制操作,提高效率。 如: MyClass func() { return MyClas
阅读全文
摘要:空指针扫描 指针形参的处理 std::shared_ptr 未传引用 ((std:😃?shared_ptr<.*>(?!/&)\s 浮点数比较用 #include "MathUtils.h" 拥有者 \s*//\s*Owner:[g][a-fh-z].* 调试警告作者不对 ^(?=.\bDBG_W
阅读全文
摘要:0、lambda新特性 C++14给lambda表达式添加了两个新功能 参数推断(auto) 参数初始化后捕获(可以在[]对某个新参数进行赋值) int a = 30, b = 2; // [] 中赋值了一个参数 // () 中可以使用auto关键字来推断参数类型 // 如果想将赋值参数和原本的捕获
阅读全文
摘要:在模板函数中使用is_same判断类型的话,编译器会实例化所有路径,即使某些路径在运行时不会被执行。 这意味着编译器会检查所有的分支,确保它们都是有效的。 例如如果存在从string转为int的路径,即便T为string时不会进入该路径,依旧会编译失败。 template<class T> void
阅读全文
摘要:using namespace System; using namespace System::Threading; namespace NNNN { public ref class TTTT { static Thread^ t1; static Thread^ t2; void fun() {
阅读全文
摘要:bool WriteExcelFile_OfficeInterop(String^ path, DataSet^ dt, const std::vector<std::string>& sheetName, bool hideColumnName) { // If the file already
阅读全文
摘要:库 说明 优势 劣势 是否免费商用 Qt WebSockets Qt框架中的WebSocket模块。 不需要额外集成第三方库;支持异步处理,适合在Qt应用程序中处理并发WebSocket请求。 性能较差 付费 libwebsockets 轻量级的C库,用于开发WebSocket服务器和客户端。 高性
阅读全文
摘要:多边形由多个线段确定,在多边形内部可能有0或多个挖孔。 判断一个点是否在多边形内部,但不位于挖孔内部。 思路: 从点出发作向右延伸的射线,判断射线经过的线段个数。 交点为奇数则在内部,偶数则在外部。 需要用到直线方程的两点式 #include <iostream> #include <vector>
阅读全文