gpt4 book ai didi

c++ - C++ 模板元编程的最佳介绍?

转载 作者:IT老高 更新时间:2023-10-28 11:51:53 26 4
gpt4 key购买 nike

静态元编程(又名“模板元编程”)是一种很棒的 C++ 技术,它允许在编译时执行程序。当我读到这个典型的元编程示例时,我的脑海里突然闪过一个灯泡:

#include <iostream>
using namespace std;

template< int n >
struct factorial { enum { ret = factorial< n - 1 >::ret * n }; };

template<>
struct factorial< 0 > { enum { ret = 1 }; };

int main() {
cout << "7! = " << factorial< 7 >::ret << endl; // 5040
return 0;
}

如果想了解更多关于 C++ 静态元编程的知识,最好的资源是什么(书籍、网站、在线课件等等)?

最佳答案

[回答我自己的问题]

到目前为止,我发现的最好的介绍是第 10 章,“C++ 中的静态元编程”,来自生成式编程、方法、工具和应用程序,作者 Krzysztof Czarnecki 和 Ulrich W. Eisenecker,ISBN- 13:9780201309775;以及 David Vandevoorder 和 Nicolai M. Josuttis 的 C++ 模板:完整指南的第 17 章“元程序”,ISBN-13:9780201734843。

alt text alt text alt text alt text

Todd Veldhuizen 有一个很好的教程 here .

一般来说,C++ 编程的一个很好的资源是 Modern C++ Design,作者是 Andrei Alexandrescu,ISBN-13: 9780201704310。这本书混合了一些元编程和其他模板技术。对于元编程,请参阅第 2.1 节“编译时断言”、第 2.4 节“将积分常量映射到类型”、第 2.6 节“类型选择”、第 2.7 节“在编译时检测可转换性和继承”、第 2.9 节“NullType” > 和 EmptyType”和 2.10 “类型特征”。

我发现的最好的中级/高级资源是 C++ 模板元编程,作者 David Abrahams 和 Aleksey Gurtovoy,ISBN-13:9780321227256

如果您只喜欢一本书,请获取C++ 模板:完整指南,因为它也是一般模板的权威引用。

关于c++ - C++ 模板元编程的最佳介绍?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/112277/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com