这个列表收集了 C++ 语言的一些晦涩(Obscure)特性,是我经年累月研究这门语言的各个方面收集起来的。C++非常庞大,我总是能学到一些新知识。即使你对C++已了如指掌,也希望你能从列表中学到一些东西。下面列举的特性,根据晦涩程度由浅入深进行排序。1. 方括号的真正含义2. 最烦人的解析3.替...【阅读全文】
关于引用和指针的区别的文章很多很多,但是总是找不到他们的根本区别,偶然在codeproject上看到这篇文章,觉得讲的挺好的,所以翻译了下,希望对大家有帮助。原文地址: http://www.codeproject.com/KB/cpp/References_in_c__.aspx引言 我选择写 C++ 中的引用是因为我感觉...【阅读全文】
SFINAE是Substitution Failure Is Not An Error的缩写,即利用编译器的模板匹配失败来实现某些功能。C++中模板匹配遵循尽可能精确的原则,当最精确的模板匹配失败时会再尝试候选模板,因此利用同名但模板参数不同的多个模板函数可以达到编译器检查或判断的目的。比如,对于多个module_xx类,需要检查其是否存在get_...【阅读全文】