c = getopt_long(argc, argv, ":hr::vp:dW;", longopts, NULL));
请问各位,上面这一句代码中,":hr::vp:dW;" ,为什么h前面有一个冒号。
不是都在参数后面加冒号吗?参数前面的冒号又代表什么意思??
谢谢
c = getopt_long(argc, argv, ":hr::vp:dW;", longopts, NULL));
请问各位,上面这一句代码中,":hr::vp:dW;" ,为什么h前面有一个冒号。
不是都在参数后面加冒号吗?参数前面的冒号又代表什么意思??
谢谢
1.冒号(:)用法
(1)表示机构内位域的定义(即该变量占几个bit空间)
typedef struct _XXX{
unsigned char a:4;
unsigned char c;
} XXX;
(2)构造函数后面的冒号起分割作用,是类给成员变量赋值的方法,初始化列表,更适用于成员变量的常量const型。
struct _XXX{
_XXX() : y(0xc0) { }
};
(3) public:和private:后面的冒号,表示后面定义的所有成员都是公有或私有的,直到下一个"public:”或"private:”出现为止。"private:"为默认处理。
(4)类名冒号后面的是用来定义类的继承。
class 派生类名 : 继承方式 基类名
{
派生类的成员
};
继承方式:public、private和protected,默认处理是public。
你自己看看吧!!!