Closed. This question is opinion-based 。它目前不接受答案。












想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文来回答。

7年前关闭。



Improve this question




为什么我们不能在函数上使用 显式 关键字?我想不出有什么理由不允许这样做(还有几个相反的理由)。

为什么是这样?

最佳答案

通过声明函数的已删除模板版本,可以轻松实现您想要实现的(禁止对函数参数进行类型转换):

template <class T> void f(T) = delete;

void f(int){}

int main()
{
    double k = 4;
    f(k); //error: use of deleted function ‘void f(T) [with T = double]’
}

关于c++ - 为什么我们不能使函数显式?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18383242/

10-11 22:56
查看更多