在浏览一些米莉源代码时,我遇到了一个声明如下的结构:
template <class T, class Pre, class Pos>
struct PrePosCaller<T*, Pre, Pos>(来自这里)
我不熟悉的部分是<T*, Pre, Pos>。我理解代码在这个上下文中的作用和用途,但是我想知道在哪里有文档化的,这样我就可以更多地了解/理解它。
发布于 2010-06-22 13:37:33
这是模板专门化。特别是部分专业化。
在代码中的某个地方有一个模板声明为:
template <class T, class Pre, class Pos>
struct PrePosCaller { //...
};或者类似的东西。然后,它们为第一个参数是指针类型的情况提供该模板的专门化。也就是说,当模板的第一个参数是指针时,这是PrePosCaller的模板定义。
发布于 2010-06-22 13:37:49
发布于 2010-06-22 14:26:07
C++第2卷的思考提供了一个关于模板和相关技术的教学观点。总的来说,它也是关于C++的优秀读物。而且是免费的。
https://stackoverflow.com/questions/3093568
复制相似问题