繁体   English   中英

整数C ++包装器

[英]Integer c++ wrapper

我正在用C ++做一个非常小和简单的Integer类包装器,其全局性如下所示:

class Int
{
  ...
private:
  int value;
  ...
}

我处理了几乎所有可能的分配,但是我不知道要使用本地左分配必须使用哪种运算符。

例如:

Int myInteger(45);
int x = myInteger;

您可能希望转换运算符转换为int:

class Int
{
 public:
  operator int() const { return value; }
 ...
};

这允许以下int初始化

int x = myInteger;

在C ++ 11中,您可以决定是否将转换限制为int ,或者是否允许从int到其他内容的进一步转换。 要限制为int ,请使用explicit转换运算符:

explicit operator int() const { return value; }

尽管在这种情况下可能没有必要。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM