我实际上正在分析一些鳕鱼,我发现了这个
Ptr<UniformRandomVariable> m_yMinVar;
我有一些c经验,但没有c++,我的理解是,该行声明了一个指针调用m_yMinVar,它的“类型”<UniformRandomVariable>
其中“UniformRandomVariable”必须是其他cpp文件中的类,但我真的不知道,
我想确切地知道 Ptr 是什么,因为我的文本编辑器将其重新识别为变量类型
还有“<>”,我不确定那是
最后,如果有人可以分享给我一个链接,我可以在其中看到运算符和不同类型的声明变量和编码类型,例如“i++ = i+= i=i+1”
再见,谢谢大家
最佳答案
Ptr<UniformRandomVariable>
是类模板的实例化。类模板的实例是类。类是用户定义的类型。 Ptr<UniformRandomVariable> m_yMinVar;
整体上是 Ptr<UniformRandomVariable>
类型变量的声明.
Ptr
是模板的名称。鉴于名称,可以相当安全地假设它是指针的某种包装器。如果 Ptr
的第一个模板参数是一个类型参数,那么 UniformRandomVariable
是某种类型的名称。它可能是一个类,也可能是一个 typedef。如果 Ptr
的第一个模板参数是非类型参数,则 UniformRandomVariable
是某个常数值。
Ptr
必须在同一翻译单元内定义(在实例化之前)。 UniformRandomVariable
必须至少在实例化中使用的同一翻译单元中声明,并且取决于 Ptr
的定义模板,UniformRandomVariable
可能还需要定义。
关于c++ - 在c++中Ptr<> a代表什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53353314/