一开始并不知道有源代码版本, 直到昨天上官网才看到……
作者: CQY
绕任意轴旋转的矩阵导致的OpenGL 显示问题
帮师兄找一个OpenGL显示上的Bug, 是将原本放在CPU上做的旋转操作放到了GPU上做, 结果两边显示结果不一致……
PIMPL模式
从师兄那里学到的一种思想简单有效的设计模式, PIMPL即Private Implementation或Pointer to Implementation, 指的是通过一个私有的类成员指针, 将指针所指向的类的实现隐藏起来。
巧用git submodule sync更新URL
在升级项目的第三方库的时候, 使用git submodule update提示更新出错……
左移16位的妙用
在计算中点时看到一个把坐标点x, y分量相加再左移16位的神奇操作~
如何向一个基于CMake构建的项目添加库
对于CMake实在不熟, 几乎每次碰到CMake的问题都需要请教师兄, 惭愧……
OpenGL究竟是在什么时候执行透视除法的?
weak_ptr的妙用
面试的时候碰到过这样一个问题: 定义两个类, 每个类中又包含一个指向对方类型的智能指针作为成员变量, 然后创建对象, 这样会出现什么问题?
C++版并查集(精简递归)
用递归的思路写的并查集, 觉得更容易理解, 虽然此处并没有针对每一个小集合的大小进行优化, 算法执行过程当中有可能会导致某一个集合变得很大:
unordered_map<int, int> f;
int find(int x) {
if (!f.count(x)) f[x] = x;
if (x != f[x]) f[x] = find(f[x]);
return f[x];
}
void uni(int x, int y) {
x = find(x), y = find(y);
if (x != y) f[x] = y;
}
