2019

Weekly - 3
进击的巨人第四季要等到2020年了

终于看完了第三季,巨人可以说是近年来最优秀的动漫作品了。而且第三季的最后几集又将整个作品的世界观和精神层次提升了一大截,可以说是相当起来第四季艾主席的表现了。

Jul 07
CPP: STL map 的用法

抛开具体的编程语言场景,map 是一类非常基本的数据组织形式,其作用是将一个可 Hash 的值,映射到另一个值,而且一般来讲是一对一的(存在一对多的情况)。map 内部使用了红黑树,这棵树具有对数据自动排序的功能,使得对 map 的检索意义达到非常高的效率。基于键值的查找的复杂度是 Log(N)。

这里讲讲 C++标准库里面 map 的用法。

Jul 01
C++中将结构体放置在 std::vector 容器内的操作风险

有一组长度不固定的参数需要传输,且参数形式为结构体,那么一个比较简单的方法是将这些参数作为一个std::vector。例如

1
void f(std::vector<struct ExampleStruct> data);

由于 C++是采用值传递的方式,每次对std::vector进行元素的存取操作时,都会对涉及的结构体进行复制。如果结构体的数量比较多,或者结构体的体积比加大,那么这种方式对于计算和内存资源的浪费就比较大了。

Jun 28
MAC: @rpath的坑

1 Problem

这篇文章的缘由是我在尝试使用ns3带的NetAnim程序时,显示了下面这个错误:

1
2
3
4
dyld: Library not loaded: @rpath/QtGui.framework/Versions/4/QtGui
Referenced from: /path/to/ns-allinone-3.28/netanim-3.108/./NetAnim
Reason: image not found
[1] 86663 abort ./NetAnim
Jun 28