摘要:
这个报错是加载动态库失败,解决它分三步走 检查这个dll是否存在,且是否在搜索目录下(搜索目录一般是 当前目录 + 系统目录 + 程序内通过sys.path.append添加的) 如果dll存在,则检查dll的依赖,这里python并没有告诉我们缺少哪个依赖,有点坑== 可通过Dependencie 阅读全文
摘要:
算法 参考Itanium C++ ABI 前置知识 vtable、vptr 可以参考c++中虚析构函数如何实现多态的、内存布局如何? RTTI layout 每个vtable都应包含 当前vptr与源对象vptr的偏移量,其地址为 :vptr - 2个字 每个vtable都应包含 继承类的std:: 阅读全文
摘要:
假设c++侧读到的数据是一个结构体, 定义如下: struct AirwayData { int uavId; int routeId; std::vector<int> longitude; std::vector<int> latitude; std::vector<float> altitud 阅读全文
摘要:
导出的坑 1.dynamic module does not define module export function 这是由于导出的包名不一致导致的,需要保证 cmake的project名称 project ("haha" LANGUAGES CXX) # <-- haha find_packa 阅读全文
摘要:
看似简单的配置流程 安装 : vcpkg install pybind11 编写 cmake find_package(pybind11 REQUIRED) pybind11_add_module(${PROJECT_NAME} src/main.cpp) 问题随之而来 1.[build] LINK 阅读全文
摘要:
写法 opengl4.5新增了DSA(direct_state_access), 可以不用glBindBuffer()和glBindVertexArray()直接设置好VAO、VBO、IBO, 只需要draw之前bind即可 新旧函数对比(左侧为新函数) glCreateBuffers = glGe 阅读全文
摘要:
树的直径 树上任意两节点之间最长的简单路径即为树的「直径」 当以某个节点为根时,从这个节点出发,会得到最长路径d1和次长路径d2,则以该节点为根的最长路径为d1 + d2 // 已知树边关系 : vector<vector<int>> graph(n) int maxLen = 0; functio 阅读全文
摘要:
1. unordered_map 的 operator[] 需要自定义结构体有默认构造函数 比如下面程序会报异常 struct Node { int left, right; // [left, right] int value; int lazy; Node(int l, int r) : lef 阅读全文
摘要:
LeetCode699. 掉落的方块 珂朵莉树 class ChthollyTree { public: struct ChthollyNode { int left, right; mutable int value; // 可以直接在set里更改 ChthollyNode(int l, int 阅读全文
摘要:
LeetCode907 非常经典的一道题,思想也很经典,核心点在于预处理出当前点为最小值时的辐射范围 int n = nums.size(); vector<int> left(n, -1); vector<int> right(n, n); // 维护递增栈 stack<int> stackUp; 阅读全文