我有一个模板功能:
template <typename T>
inline void Acquire_Store(volatile T* ptr, T value) {
// ...
}
当我尝试像这样调用它时:
volatile Node* node;
Acquire_Store(&node, static_cast<Node*>(nullptr));
g++、clang++ 编译器都是这样说的:
推断参数“T”的冲突类型(“volatile List::Node *”与“List::Node *”)
调用此模板函数的正确方法是什么?
更新。
现在我不确定node
' 的类型 - 也许,我应该将其更改为Node* volatile node;
?
我希望变量node
是易变的,但不是指向对象。