c++ - 将 const 添加到函数模板指针参数

标签 c++ function templates constants

考虑:

template<typename X>
inline typename std::enable_if< std::is_pointer<X>::value, void>::type
replyOk(X pointer)
{
    *pointer = *pointer; //for sake of example
} 

是否可以向指向的数据添加常量,以便 *pointer = *pointer 产生编译器错误。

例如我可以这样做

...
replyOk(X const pointer)
...

但这增加了变量指针的常量性,而不是它所指向的内容。我不确定这是否有意义......

最佳答案

我不明白 enable_if 的意义。

template<typename X>
inline void replyOk(const X* pointer) {
  //...
}

关于c++ - 将 const 添加到函数模板指针参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44955079/

相关文章:

javascript - 在 Javascript 中,您可以在同一类的另一个函数中调用该类的函数吗?

c++ - 为什么我不能将 gtest ValuesIn 生成器与 std::map 一起使用?

c++ - 实现析构函数

c++ - LNK2019 - 为什么未解决外部与模板 friend 功能

c++ - 友元函数返回对私有(private)数据成员的引用

c++ - 设置派生对象的基础对象?

javascript - 如何在游戏重新启动时阻止 Javascript 多次调用函数

c++ - 从类 T 获取函数名 (__func__) 和指向成员函数 void(T::*pmf)() 的指针

C++ Templated Functor (based on Modern C++ Design)编译错误

c++ - 友元函数声明中的尖括号是什么意思?