我在Ogre3D中有这个typedef:
namespace Ogre {
typedef vector<String>::type StringVector;
...
}
什么是“::”运算符?它有什么用吗?实际上,我认为这是一个字符串向量 - 一个StringVector。正确的吗?
答案 0 :(得分:1)
定义StringVector
类型vector<String>::type
。
似乎type
是vector
内定义的类型(template class
)
::
被称为“范围解析运算符”。
答案 1 :(得分:0)
type
是在vector
类中声明的某个实体(显然是一种类型)。 ::
运算符用于引用type
命名空间中的元素vector
。
P上。 S.通过说“命名空间”,我不仅仅指实际的C ++ namespace
特性,因为类也与命名空间类似,因为它们可以有嵌套定义。