firemail

标题: C++ 强制转换运算符 cast [打印本页]

作者: Qter    时间: 2020-4-4 15:08
标题: C++ 强制转换运算符 cast
强制转换运算符是一种特殊的运算符,它把一种数据类型转换为另一种数据类型。强制转换运算符是一元运算符,它的优先级与其他一元运算符相同。
大多数的 C++ 编译器都支持大部分通用的强制转换运算符:
(type) expression
其中,type 是转换后的数据类型。下面列出了 C++ 支持的其他几种强制转换运算符:
上述所有的强制转换运算符在使用类和对象时会用到。现在,请看下面的实例,理解 C++ 中如何使用一个简单的强制转换运算符。复制并黏贴下面的 C++ 程序到 test.cpp 文件中,编译并运行程序。
#include <iostream>using namespace std; int main(){   double a = 21.09399;   float b = 10.20;   int c ;    c = (int) a;   cout << "Line 1 - Value of (int)a is :" << c << endl ;      c = (int) b;   cout << "Line 2 - Value of (int)b is  :" << c << endl ;      return 0;}
当上面的代码被编译和执行时,它会产生下列结果:
Line 1 - Value of (int)a is :21Line 2 - Value of (int)b is  :10

https://www.runoob.com/cplusplus/cpp-casting-operators.html

作者: Qter    时间: 2020-4-4 15:43
本帖最后由 Qter 于 2020-4-4 16:21 编辑

        //ContactInfo* pCI = (ContactInfo*)index.data(Qt:isplayRole).value<void*>();
                        ContactInfo* pCI = dynamic_cast<ContactInfo*>(index.data(Qt:isplayRole).value<ContactInfo*>());




欢迎光临 firemail (http://firemail.wang:8088/) Powered by Discuz! X3