首页 > 后端开发 > C++ > 正文

如何在 C 中的类外部定义模板成员函数?

Susan Sarandon
发布: 2024-11-02 11:19:03
原创
262 人浏览过

How to Define Template Member Functions Outside a Class in C  ?

模板成员函数的类外定义

在 C 中,当在类定义之外定义模板类成员函数时,它必须同时指定类模板参数和函数成员模板参数。这允许函数访问类和函数模板的上下文。

在类定义之外定义模板成员函数的语法如下:

template<class T> template <class U>
void Foo<T>::bar() {
  // Function body
}
登录后复制

In在这个例子中,Foo是模板类,T是类模板参数,U是函数成员模板参数,bar是函数成员名称。

为了说明用法,请考虑以下代码片段:

<code class="cpp">template <class T>
class Foo {
public:
    template <class U>
    void bar();
};

template<> template <class U>
void Foo<int>::bar() {
  // Implementation that uses both T and U
}</code>
登录后复制

在此代码中,bar 函数成员是在 Foo 类定义之外定义的,但它仍然可以访问类模板参数 T 和函数成员模板参数 U。

以上是如何在 C 中的类外部定义模板成员函数?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!