gpt4 book ai didi

c++ - 友元声明和显式模板实例化声明

转载 作者:行者123 更新时间:2023-11-28 06:03:08 25 4
gpt4 key购买 nike

假设我有一个函数模板

template <typename T>
void f(T) {}

然后,我们可以有一个 friend 声明

friend void f<int>(int);

和一个明确的模板实例化声明

extern template void f<int>(int);

这两个声明在某种程度上是相关的还是完全独立的?如果相关,它们如何相互作用?

最佳答案

friend 声明不与任何事物“交互”,除了声明为友元的函数的定义之外,允许访问包含该类的私有(private)成员声明。

所以,不,在 friend 声明和 extern template 声明之间没有特殊的交互,尽管它们都引用相同的函数(在这个意义上,它们是相关的,但我假设你在写问题时意识到了这一点)。

关于c++ - 友元声明和显式模板实例化声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32896436/

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