可能重複:
Regular cast vs. static_cast vs. dynamic_castC++像vs C像casts?
我一直在使用類似C的鑄件因爲我已經被編程:
class* initializedClassInstance;
void* test = (void*) initializedClassInstance;
,我一直告訴某處我應該習慣C++強制轉換(static_cast,dynamic_cast ...)。
有沒有理由比其他人更喜歡(C++ over C風格)? 靜態演員和動態演員之間有區別,對吧?但是它是什麼?
謝謝!
dynamic_cast將只返回NULL指針。對於引用,將拋出異常 – Andrew 2012-08-06 08:53:04
@安德魯,是的,這是一個很好的觀點,謝謝。 – SingerOfTheFall 2012-08-06 08:55:59
@KillianDS,這就是我的意思。一個很好的例子就是指針投射,它可以讓你投射幾乎任何東西。 – SingerOfTheFall 2012-08-06 08:57:27