C++不同数据类型的转换
生活随笔
收集整理的這篇文章主要介紹了
C++不同数据类型的转换
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
C++不同數據類型的轉換
C++標準類型數據的轉換
1.1隱式類型轉換,如:
int i=6;
i=i+7.5;
1.2顯式類型轉換,如:
類型名(數據)
如int(89.5)
在C語言中
(int)89.5
建議用C++的方式。
C++用轉換構造函數進行類型轉換
1.1轉換構造函數也是一種構造函數,它遵循構造函數的一般規則。通常把帶有一個參數的構造函數稱為轉換構造函數。如: Complex(double r){real=r;image=0;} 1.2使用轉換構造函數把一個特定的數據轉換成類的步驟如下: A.先聲明一個類。 B.在這個類中定義一個只有一個參數的轉換構造函數,參數的類型是需要轉換的類型,在函數體中實現轉換的方法。 C.在類的作用域內可以實現如下形式的轉換。 類名(指定類型的數據) 1.3不僅可以把一個標準類型轉換成類對象還可以把一個類對象轉換成一個類對象。(要求數據是public)C++用類型轉換函數進行類型轉換
1.1與轉換構造函數不同(把別的數據類型轉換為類的對象),類型轉換函數往往把類對象轉換為其他類型。如: operator double() {return real;} 1.2類型轉換函數的一般形式 operator 類型名() {實現轉換的語句} 在函數名的前面不能指定函數類型,函數沒有參數。 1.3類型轉換函數也稱為類型轉換運算符函數,由于它也是重載函數,故又稱為類型轉換運算符重載函數。 #include <iostream> using namespace std; class Complex { public: Complex(){real=0;image=0;} Complex(double r,double i):real(r),image(i){} operator double(); private: double image,real; }; Complex::operator double() { return real; } int main() { Complex c1(1,2); double c=0; c=c1+1; cout << c << endl; return 0; } 1.4將運算符+函數重載為友元函數,在兩個復數相加時,可以用交換律。所以往往將雙目運算符函數重載為友元函數,單目運算符重載為成員函數。總結
以上是生活随笔為你收集整理的C++不同数据类型的转换的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【课题报告】OpenCV 抠图项目实战(
- 下一篇: Python数模笔记-PuLP库(1)线