C++ 类将对象转换为整数

标签 c++ integer

我正在通过一本书(Schaums Programming with c++)自学 C++,我遇到了一些我想尝试但没有涵盖的内容(据我所知)。

我有一个包含 hrs:mins:secs 的类。 是否可以编写一个类型转换,以整数的形式返回对象?

如果不是,那可能就是我找不到任何东西的原因。谢谢。

最佳答案

当然,您只需编写一个转换运算符。假设您想将时间转换为秒数:

class MyTime
{
    ...

public:
    operator int() const
    {
        return hours_ * 3600 + minutes_ * 60 + seconds_;
    }
}

在 C++11 中,您还可以添加关键字 explicit给您的运营商,以便您的类型转换明确要求 static_cast<int>以便编译。

关于C++ 类将对象转换为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13730153/

相关文章:

casting - 在Stylus中,如何将百分比转换为整数?

javascript - 只返回数字并从 JavaScript 中的现有数组中删除字符串?

c++ - Linux 上良好的文本文件 IO C/C++ 指南

c# - MFC 应用程序中的 .NET Activex 控件访问冲突

php - 如何在 PHP 中有一个 64 位整数?

c++ - 浮点/整数类型转换的可靠溢出检测

PHP var 变为负值

c++ - Homebrew 软件安装 g++ 4.7 不工作

c++ - C++ 的可观察容器

c++ - 用于遍历继承层次结构的 Static_cast 与 dynamic_cast