struct和:: - 它做了什么

时间:2012-03-29 22:15:19

标签: c++ struct

有人可以告诉我这种结构语言的来源吗?我对C或java的了解并不熟悉,Google在这方面帮助不大。

主要是,我从未在结构中看到过使用“::”。它的名字是什么,它的作用是什么?

我看到的一个例子是:

struct msg
{ 
  common::messageHeader sHeader;
  common::flag sFlag;
};

感谢您的指导!

1 个答案:

答案 0 :(得分:9)

::不是C运算符,而是C ++中的范围解析运算符。

可以使用它(在C ++中)来限定属于classstructnamespace的成员。

如果这是C ++,它的使用方式如下:

namespace common
{
  struct messageHeader {};
  enum flag
  {
     flag1,
     flag2
  };
}

struct msg
{ 
  common::messageHeader sHeader;
  common::flag sFlag;
};