繁体   English   中英

C ++重载类型转换为Double

[英]C++ Overload Typecast to Double

我正在处理另一个任务,我不知道如何将类型转换重载为两倍。 我需要提供实施。 希望能有所帮助。 谢谢!

这是我的HugeInteger.h文件中的函数原型/声明。

operator double(void)const;

这是代码示例,用于测试将重载类型转换为double运算符。

cout << "\n****** Test overloaded type cast to double operator ******\n";
    cout << "\nA = " << A << "\nB = " << B << "\n";
    double dA = (double)A;             // one way to invoke cast operator
    double dB = static_cast<double>(B); // another way to invoke cast operator
    cout << "\nA cast to a double is: " << dA;
    cout << "\nB cast to a double is: " << dB << '\n' << endl;
    struct Money {
         operator double() { return _amount; }

     private:
          double _amount;
   };

   int main() {
       Money Account;
      double CashOnHand = Account;
   }

这是Micrsoft中的演示,是从用户类型到双精度类型的typecast(auto)。 因此,我认为这是完成工作的好方法。 您不仅限于此功能,还可以在其中做更多的事情,或者围绕它构建框架。 我希望这是有帮助的。 am昧!!!

暂无
暂无

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

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