我一直试图弄清我在使用的代码库中看到的变量声明模式。这是一个示例函数,一个使用所讨论模式的构造函数:
template <class T>
ClassInt<T>(ClassAssigner *ca, const char *n, T *_ptr, int T::*_sp){
this->ptr = _ptr;
foo(_sp);
ca->bar(n, this);
}
令人困惑的部分是代码段int T::*_sp
。该变量是否是指向int的指针,并且该变量将存在于命名空间T
中?还有吗 _sp
到底是什么?
在这种情况下,我一直很难理解指针和作用域解析运算符将如何交互。有人有办法理解吗?