亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

C++ 類型轉換

2019-11-17 05:27:16
字體:
來源:轉載
供稿:網友

  類型轉換是將一種類型的值映射為另一種類型的值。類型轉換實際上包含有自動隱含和強制的兩種。

  類型的自動隱式轉換

  C++語言編譯系統提供的內部數據類型的自動隱式轉換規則如下:

  1. 程序在執行算術運算時,低類型可以轉換為高類型。

  2. 在賦值表達式中,右邊表達式的值自動隱式轉換為左邊變量的類型,并賦值給它。

  3. 當在函數調用時,將實參值賦給形參,系統隱式地將實參轉換為形參的類型后,賦給形參。

  4. 函數有返回值時,系統將自動地將返回表達式類型轉換為函數類型后,賦值給調用函數。

  在以上情況下,系統會進行隱式轉換的。當在程序中發現兩個數據類型不相容時,又不能自動完成隱式轉換,則將出現編譯錯誤。例如:

   int * p = 100;

  在這種情況下,編譯程序將報錯,為了消除錯誤,可以進行如下所示的強制類型轉換:

   int * p = (int *)100;

  將整型數100顯式地轉換成指針類型。

  構造函數具有類型轉換功能

  在實際應用中,當類定義中提供了單個參數的構造函數時,該類便提供了一種將其他數據類型的數值或變量轉換為用戶所定義數據類型的方法。因此,可以說單個參數的構造函數提供了數據轉換的功能。下面通過一個例子進一步說明單參數構造函數的類型轉換功能。

#include
class A
{
public:
A() { m=0; }
A(double i) { m=i; }
void PRint() { cout< private:
double m;
};

void main()
{
A a(5);
a=10; file://a與10是不同的數據類型
a.print();
}
 
  程序的輸出結果為:

  10

  在該程序中,賦值語句a=10;中,賦值號兩邊數值10和對象a是兩上不相容的數據類型,可是它卻能順利通過編譯程序,并且輸出顯示正確結果,其主要原因是得益于單參數的構造函數。編譯系統選通過標準數據類型轉換,將整型數值10轉換成double型,然后,再通過類中定義的單參數構造函數將double型數值轉換為A類類型,最后把它賦值給a。這些轉換都是自動隱式完成的。
  轉換函數

  轉換函數又稱類型強制轉換成員函數,它是類中的一個非靜態成員函數。它的定義格式如下:

   class <類型說明符1>
    {
     public:
      Operator <類型說明符2>();
      …
    }

  這個轉換函數定義了由<類型說明符1>到<類型說明符2>之間的映射關系??梢?,轉換函數是用來將一種類型的數據轉換成為另一種類型。下面通過一個例子說明轉換函數的功能。

#include

class Rational
{
public:
Rational(int d, int n)
{
den = d;
num = n;
}
operator double(); file://類型轉換函數
private:
int den, num;
};

Rational::operator double()
{
return double(den)/double(num);
}

void main()
{
Rational r(5, 8);
double d = 4.7;
d+=r;
cout< }

  程序輸出結果:

   5.325

  由程序可知,d是一個double型數值,r是Rational類的對象,這兩個不同類型的數據進行加法之所以能夠進行是得益于轉換函數operator double()。為使上述加法能夠進行,編譯系統先檢查類Rational的說明,看是否存在在下轉換函數能夠將Rational類型的操作數轉換為double類型的操作數。由于Rational類中說明了轉換函數operator double(),它可以在程序運行時進行上述類型轉換,因此,該程序中實現了d+=r;的操作。

  定義轉換函數時應注重如下幾點:

  (1) 轉換函數是用戶定義的成員函數,但它要是非靜態的。

  (2) 轉換函數不可以有返回值。

  (3) 轉換函數也不帶任何參數。

  (4) 轉換函數函數還不能定義為友元函數。

  轉換函數的名稱是類型轉換的目標類型,因此,不必再為它指定返回值類型;轉換函數是被用于本類型的數值或變量轉換為其他的類型,也不必帶參數。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产男女猛烈无遮挡91| 91精品国产电影| 国产精品男女猛烈高潮激情| 欧美激情中文网| 成人网在线免费观看| 亚洲电影成人av99爱色| 久久久久久久久综合| 精品一区二区三区四区在线| 97在线观看免费| 91免费的视频在线播放| 亚洲综合大片69999| 在线观看精品自拍私拍| 国产suv精品一区二区三区88区| 国产视频亚洲精品| 欧美一级片免费在线| 国产一区二区三区在线观看视频| 国产精品青青在线观看爽香蕉| 高跟丝袜欧美一区| 国产精品久久久久免费a∨大胸| 欧美怡春院一区二区三区| 国语自产精品视频在免费| 91亚洲va在线va天堂va国| 成人免费淫片视频软件| 国产日韩欧美在线看| 国产精品小说在线| 亚洲伊人久久综合| 国产精品偷伦视频免费观看国产| 欧美国产精品日韩| 欧美丰满老妇厨房牲生活| 日韩一区二区精品视频| 亚洲激情中文字幕| 欧美一级大片在线免费观看| 日韩欧美国产免费播放| 亚洲成人1234| 国产91对白在线播放| 欧美大片va欧美在线播放| 欧美巨大黑人极品精男| 成人免费在线视频网站| 亚洲欧美激情一区| 欧美激情国内偷拍| 欧美精品激情视频| 中文精品99久久国产香蕉| 欧美香蕉大胸在线视频观看| 菠萝蜜影院一区二区免费| 国模吧一区二区三区| 2021久久精品国产99国产精品| 国产精品大陆在线观看| 国模视频一区二区| 欧美午夜宅男影院在线观看| 亚洲天堂日韩电影| 国产人妖伪娘一区91| 亚洲精品一区中文字幕乱码| 日韩成人中文字幕在线观看| 亚洲а∨天堂久久精品喷水| 一区二区三区亚洲| 国产精品亚洲第一区| 日韩风俗一区 二区| 国内精品久久久久影院 日本资源| 51午夜精品视频| 另类美女黄大片| 成人福利视频网| 欧美疯狂做受xxxx高潮| 九九视频直播综合网| 国产+成+人+亚洲欧洲| 亚洲精品欧美日韩| 久久色精品视频| 7777精品久久久久久| 亚洲精品乱码久久久久久金桔影视| 亚洲第一精品久久忘忧草社区| 久久免费视频观看| 日韩免费在线免费观看| 午夜精品免费视频| 欧美第一淫aaasss性| 丁香五六月婷婷久久激情| 亚洲美女精品久久| 亚洲天堂免费观看| 欧美性猛交xxxx黑人| 最近中文字幕2019免费| 欧美成人免费小视频| 乱亲女秽乱长久久久| 在线看日韩av| 91色在线视频| 少妇精69xxtheporn| 日韩精品在线免费观看视频| 久久久精品亚洲| 国产精品青草久久久久福利99| 久久久久久av| 欧美性资源免费| 欧美日韩人人澡狠狠躁视频| 日韩精品欧美激情| 日韩在线观看免费网站| 亚洲色图狂野欧美| 综合网中文字幕| 在线观看国产精品日韩av| 一区二区三区国产视频| 国产日韩中文字幕在线| 国产ts一区二区| 日韩欧美一区二区在线| 精品久久久一区二区| 乱亲女秽乱长久久久| 国产精品久久久亚洲| 日韩av免费看| 国产精品美女www爽爽爽视频| 97色在线视频观看| 久久99精品久久久久久琪琪| 亚洲影视九九影院在线观看| 国产欧美日韩中文字幕| 久久久久久久久综合| 国产精品久久久久久五月尺| 国产区精品视频| 精品在线欧美视频| 中文字幕日韩av电影| 97超级碰碰人国产在线观看| 欧美亚洲免费电影| 色播久久人人爽人人爽人人片视av| 久久影视电视剧凤归四时歌| 国产精品免费一区二区三区都可以| 色偷偷av亚洲男人的天堂| 亚洲精品福利免费在线观看| 久久99视频精品| 97精品国产91久久久久久| 亚洲丁香婷深爱综合| 色噜噜狠狠狠综合曰曰曰88av| 中文字幕在线视频日韩| 亚洲欧美日韩爽爽影院| 国产一区av在线| 上原亚衣av一区二区三区| 国模gogo一区二区大胆私拍| 欧美激情在线有限公司| 91精品国产精品| 欧美亚洲在线视频| 欧美寡妇偷汉性猛交| 亚洲国产日韩欧美在线图片| 91精品免费看| 国产精品午夜国产小视频| 亚洲精品综合精品自拍| 在线视频欧美日韩精品| 日韩成人在线视频网站| 国产va免费精品高清在线| 91精品视频在线看| 91精品国产99久久久久久| 久久不射热爱视频精品| 亚洲性线免费观看视频成熟| 欧美激情videos| 国产一区二区三区四区福利| 久久亚洲精品毛片| 91伊人影院在线播放| 久久久久久网址| 亚洲精品免费一区二区三区| 57pao成人国产永久免费| 国产成人精品在线视频| 亚洲人成欧美中文字幕| 国产91精品网站| 国产精品一区二区三区毛片淫片| 欧美亚洲视频一区二区| 欧美性猛交xxxx乱大交蜜桃| 97国产精品人人爽人人做| 亚洲第一综合天堂另类专| 成人免费xxxxx在线观看| 北条麻妃在线一区二区| 欧美成人剧情片在线观看| 亚洲视频电影图片偷拍一区| 国产亚洲欧洲高清一区| 日韩在线观看高清|