C++ 保证某个 Class 在全程序仅有一个实例

定义这样一个类a

1
2
3
4
5
6
7
8
9
10
11
12
class a
{
public:
a(){};
~a(){};
static a* theInstance();
};
a* a::theInstance()
{
static a *b = new a;
return b;
}

那么在全程序任何地方使用 a::theInstance()来获取实例,就总能得到唯一的类 a 的实例。这大概是比较基础的技巧,但是我第一次知道时还是很惊讶的。原理是利用了类的静态成员函数和静态变量的性质。

自定义 Hexo 文章链接形式

Hexo 文章默认采用 年/月/日/标题 这样的永久链接形式。这个在站点_config.yml中的permalink字段即可更改。可以使用任何的字符作为路径,例如,我希望所有的文章链接形式都是:

1
2
http://imalan.cn/archives/1
http://imalan.cn/archives/2

也就是

1
http://imalan.cn/archives/[cid]

那么就把permalink改为archives/:cid。其中的 :cidhexo g 这一步时 Hexo 会从文章的头部提取,因此需要在每篇文章的头部添加 cid 信息,例如:

查看更多