青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 505  文章 - 1034  trackbacks - 0
<2007年10月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910


子曾經(jīng)曰過:編程無他,唯手熟爾!

常用鏈接

留言簿(94)

隨筆分類(649)

隨筆檔案(505)

相冊

BCB

Crytek

  • crymod
  • Crytek's Offical Modding Portal

Game Industry

OGRE

other

Programmers

Qt

WOW Stuff

搜索

  •  

積分與排名

  • 積分 - 923764
  • 排名 - 14

最新隨筆

最新評論

閱讀排行榜

評論排行榜


static_cast  與 reinterpret_cast   

  reinterpret_cast是為了映射到一個完全不同類型的意思,這個關(guān)鍵詞在我們需要把類型映射回原有類型時用到它。我們映射到的類型僅僅是為了故弄玄虛和其他目的,這是所有映射中最危險的。(這句話是C++編程思想中的原話)

  static_cast 和 reinterpret_cast 操作符修改了操作數(shù)類型。它們不是互逆的; static_cast 在編譯時使用類型信息執(zhí)行轉(zhuǎn)換,在轉(zhuǎn)換執(zhí)行必要的檢測(諸如指針越界計算, 類型檢查). 其操作數(shù)相對是安全的。另一方面;reinterpret_cast 僅僅是重新解釋了給出的對象的比特模型而沒有進行二進制轉(zhuǎn)換, 例子如下:

  int n=9; double d=static_cast < double > (n);

  上面的例子中, 我們將一個變量從 int 轉(zhuǎn)換到 double。 這些類型的二進制表達式是不同的。 要將整數(shù) 9 轉(zhuǎn)換到 雙精度整數(shù) 9,static_cast 需要正確地為雙精度整數(shù) d 補足比特位。其結(jié)果為 9.0。而reinterpret_cast 的行為卻不同:

  int n=9;

  double d = reinterpret_cast<double  * > (n);

  這次, 結(jié)果有所不同. 在進行計算以后, d 包含無用值. 這是因為 reinterpret_cast 僅僅是復(fù)制 n 的比特位到 d, 沒有進行必要的分析.

  因此, 你需要謹(jǐn)慎使用 reinterpret_cast.



Allows any pointer to be converted into any other pointer type. Also allows any integral type to be converted into any pointer type and vice versa.
One practical use of reinterpret_cast is in a hash function, which maps a value to an index in such a way that two distinct values rarely end up with the same index.
http://msdn.microsoft.com/en-us/library/e0w9f63b.aspx


// 02_reinterpret_cast.cpp : 定義控制臺應(yīng)用程序的入口點。
//

#include 
"stdafx.h"
#include 
<iostream>

using namespace std;

// Returns a hash code based on an address
unsigned short Hash( void *p ) 
{
    unsigned 
int val = reinterpret_cast<unsigned int>( p );
    
return ( unsigned short )( val ^ (val >> 16));
}

int _tmain(int argc, _TCHAR* argv[])
{
    
int* pInt = NULL;
    
// 把負數(shù)解釋為地址
    pInt = reinterpret_cast<int*>(-0x0024FFE4); 
    cout 
<< pInt << endl; // FFDB001C 地址
    
// 4292542492,其十六進制表示正是FFDB001C
    cout << reinterpret_cast<unsigned int>(pInt) << endl; 
    cout 
<< UINT_MAX << endl; // 4294967295

    
int iValue = 9;
    
int* pValue = &iValue;
    cout 
<< &iValue << endl; // 0012FF1C 地址
    cout << pValue << endl;  // 0012FF1C 地址
    cout << *pValue << endl;  // 9 值

    cout 
<< reinterpret_cast<double*>(iValue) << endl; // 00000009 把iValue當(dāng)作指針了
    cout << reinterpret_cast<double*>(pValue) << endl; // 0012FF1C 地址

    
int a[20];
    
for ( int i = 0; i < 20; i++ )
        cout 
<< Hash( a + i ) << endl;

    
return 0;
}
/* 輸出:
FFDB001C
4292542492
4294967295
0012FF1C
0012FF1C
9
00000009
0012FF1C
65194
65198
65234
65238
65242
65246
65218
65222
65226
65230
65266
65270
65274
65278
65250
65254
65258
65262
65298
65302

*/
posted on 2011-02-16 20:00 七星重劍 閱讀(2523) 評論(0)  編輯 收藏 引用 所屬分類: PL--c/c++
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲免费观看高清完整版在线观看熊| 一区二区三区在线观看欧美| 9国产精品视频| 亚洲午夜久久久| 国产精品区二区三区日本| 亚洲女性裸体视频| 老司机成人网| 亚洲精品影院| 国产精品久久久久久久久久免费看 | 一区二区久久久久久| 亚洲欧美日韩天堂| 极品尤物一区二区三区| 欧美激情视频给我| 亚洲欧美另类久久久精品2019| 久久久亚洲影院你懂的| 亚洲精品之草原avav久久| 国产精品久久夜| 久久综合久久综合这里只有精品| 最新高清无码专区| 欧美一区二视频在线免费观看| 伊人久久大香线蕉综合热线| 欧美日韩久久| 久久久久九九九| 一本色道久久综合亚洲精品婷婷 | 久热精品在线| 亚洲小说春色综合另类电影| 激情成人在线视频| 欧美日韩一区二区国产| 久久久久久香蕉网| 在线亚洲欧美视频| 欧美jizzhd精品欧美巨大免费| 一本色道久久综合狠狠躁篇的优点 | 久久久久久一区二区| 一本色道久久99精品综合| 国产午夜精品久久久久久免费视| 久久久xxx| 中文av字幕一区| 亚洲国产色一区| 久久人人爽爽爽人久久久| 亚洲一区二区三区影院| 亚洲激情成人在线| 国产综合色在线| 国产精品国色综合久久| 欧美成人精品1314www| 欧美一区二区三区视频在线观看| 日韩视频在线一区二区三区| 欧美成人精品激情在线观看| 久久国产视频网站| 亚洲线精品一区二区三区八戒| 亚洲黄色av| 亚洲高清不卡| 精品成人在线视频| 国产日韩欧美a| 国产精品私拍pans大尺度在线| 亚洲一区二区三区涩| 亚洲精品日韩久久| 136国产福利精品导航网址| 国产视频在线观看一区二区三区| 国产精品成人一区| 欧美日韩中文字幕在线视频| 欧美精品免费视频| 欧美国产精品va在线观看| 美女视频一区免费观看| 久久亚洲视频| 久久一区中文字幕| 久久精品亚洲国产奇米99| 久久经典综合| 久久国产精品一区二区三区四区| 亚洲欧美日本精品| 欧美一区二区三区男人的天堂 | 欧美经典一区二区| 欧美激情二区三区| 欧美极品一区二区三区| 欧美激情精品久久久久久| 欧美精品一区二| 欧美日韩国产系列| 欧美日韩无遮挡| 国产精品人成在线观看免费| 国产精品视频xxx| 国产欧美视频一区二区| 国产亚洲欧美色| 一区在线观看| 亚洲人成艺术| 亚洲在线一区二区| 午夜精品久久久久99热蜜桃导演| 午夜久久资源| 久久野战av| 亚洲国产精品精华液2区45| 最新69国产成人精品视频免费| 亚洲黑丝在线| 亚洲天堂av在线免费观看| 午夜伦欧美伦电影理论片| 久久久精品国产免大香伊| 欧美chengren| 国产精品成人免费| 国产最新精品精品你懂的| 亚洲第一综合天堂另类专| 亚洲精品久久久久久久久久久久久 | 亚洲国产精品久久久久秋霞影院| 日韩视频在线一区二区三区| 亚洲一区二区免费| 久久亚洲二区| 日韩视频在线观看国产| 欧美一区二区三区在线看| 玖玖在线精品| 国产精品啊v在线| 国内精品久久久久久久影视麻豆| 亚洲日韩中文字幕在线播放| 亚洲综合不卡| 欧美激情第9页| 亚洲欧美日本在线| 欧美国产另类| 国内精品免费午夜毛片| 一本色道久久| 久热精品视频在线观看一区| 99国内精品| 久久婷婷国产综合国色天香| 欧美午夜不卡在线观看免费| 黄色精品网站| 亚洲欧美文学| 亚洲经典在线看| 欧美一区三区三区高中清蜜桃 | 国产精品日韩在线一区| 亚洲激情综合| 久久精品亚洲| 中文国产成人精品| 免费人成精品欧美精品| 国产日韩欧美二区| 亚洲一区二区三区精品在线观看| 欧美福利一区二区| 欧美一区二区精品| 国产精品白丝黑袜喷水久久久| 亚洲国产精品福利| 久久久久一区二区三区| 亚洲视频一区| 欧美日韩另类国产亚洲欧美一级| 一色屋精品视频免费看| 久久高清福利视频| 亚洲视频一二区| 欧美日韩国产一级| 亚洲毛片网站| 欧美成人一区在线| 久久久久久久性| 国内精品一区二区三区| 欧美亚洲一级片| 亚洲一二三区视频在线观看| 欧美精品日韩精品| 亚洲精品中文字| 亚洲高清中文字幕| 久久这里只有| 亚洲高清视频的网址| 老司机午夜精品| 久久久久一区二区三区四区| 国产一区在线视频| 久久精品女人| 欧美一区精品| 黄色日韩网站视频| 久久一区激情| 狂野欧美一区| 亚洲日本电影| 亚洲激情第一区| 欧美激情一区二区三区| 亚洲看片免费| 日韩亚洲欧美一区| 欧美午夜免费影院| 亚洲男人的天堂在线观看| 亚洲一级电影| 国产视频一区在线观看| 久久琪琪电影院| 久久综合亚洲社区| 亚洲精品乱码久久久久久按摩观| 亚洲国产精品久久精品怡红院 | 国产精品久久久| 欧美一区二区三区视频在线观看 | 久久偷窥视频| 亚洲精品1区2区| 亚洲高清二区| 欧美视频一区在线观看| 性久久久久久久| 久久精品官网| 亚洲日本一区二区三区| 9l国产精品久久久久麻豆| 国产精品久久久久久久浪潮网站| 久久成人精品一区二区三区| 久久本道综合色狠狠五月| 亚洲国产欧美国产综合一区| 亚洲国产精品成人久久综合一区| 欧美日韩国内自拍| 久久精品国产一区二区三区免费看 | 麻豆精品一区二区综合av| 亚洲免费播放| 亚洲免费视频一区二区| 亚洲成人在线视频网站| 亚洲美女视频在线观看| 国产色爱av资源综合区| 欧美高清在线精品一区| 欧美网站大全在线观看| 久久尤物视频| 欧美视频在线观看视频极品| 久久久久国内|