gpt4 book ai didi

c++ - 在 C++ 中使用模板是什么意思

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:12:09 25 4
gpt4 key购买 nike

最近,我在别人的源代码中遇到了一些东西。我不太了解 C++ 中的模板。你能帮我吗?

struct my_grammar : public grammar<my_grammar>
{
...
};

为什么my_grammar可以像它一样用作类型参数?

最好的问候,

最佳答案

这是一个叫做奇怪的重复模板模式的成语 - 参见 http://en.wikipedia.org/wiki/Curiously_recurring_template_pattern .总之,它提供派生类作为基类的策略,其风格类似于 Alexandrescu 的《现代 C++ 设计》一书中使用的策略(强烈推荐)。这样,基类可以使用派生类的各个方面 - 类型、常量、方法 - 所有这些都在编译时解决。

关于c++ - 在 C++ 中使用模板是什么意思,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4094414/

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