我是C++新手。初學者。當我學習C++提供的轉換特性時,我想知道爲什麼Casting特別特別是靜態轉換。當我們知道需要什麼類型的變量時,爲什麼要施放?爲什麼投射功能?
Q
爲什麼投射功能?
2
A
回答
1
如果我正確理解你的問題,你在問爲什麼有一個static_cast
運算符在C++。類型轉換有助於在類層次結構中移動指針。並且使用static_cast
,您可以在類層次關係中下注一個指針。雖然這樣的轉換並不安全,但在處理它時應該小心。
1
然後你想要,例如,將一種類型轉換爲另一種類型。說浮動到int。或不同類別的對象(通常是基本vs繼承)。有很多不同的例子。你將學會使用它,主要是通過解決一些例子和其他獲得東西的經驗。
+0
謝謝大衛。我認爲你需要做大量的編碼來理解實際使用 – Lakshmi 2011-02-18 07:02:03
1
有關static_cast功能的說明,請參閱When should static_cast, dynamic_cast and reinterpret_cast be used?。
1
static_cast旨在反轉任何隱式轉換。如果您隱式轉換爲void *,那麼如果您知道您確實只是反轉較早的轉換,則可以使用static_cast進行轉換。
相關問題
- 1. 爲什麼不能投射?
- 2. 爲什麼不能投射?
- 3. 爲什麼null投射?
- 4. 在clojure中,符號投射到什麼功能?爲什麼('+ 2 2)= 2?
- 5. 爲什麼在WndProc中投射錯誤?
- 6. 在非投射設備上使用投射功能
- 7. 爲什麼在反射投射時隱式投射工作會拋出異常?
- 8. 爲什麼我不能從片段投射到MyOwnFragment?
- 9. 爲什麼我不能在if語句內部投射對象?
- 10. 爲什麼我不能在c#中投射com對象?
- 11. 長投射到整型內部功能
- 12. Scala 2.10有什麼反射功能?
- 13. 爲什麼在.NET中投射速度比反射速度快?
- 14. 爲什麼我不能投向B *?
- 15. '功能樣式投射':非法作爲'。'的右側。運營商
- 16. 在Teradata中投射功能將字符轉換爲數字
- 17. 爲什麼NaN內功能?
- 18. 爲什麼要功能PHP?
- 19. 爲什麼功能Color.FromValues
- 20. 爲什麼我不能將此字符串作爲int來投射?
- 21. 什麼時候用來投射物體?
- 22. 爲什麼Combox.SelectedItem作爲DataRowView不是正在投射?
- 23. 不能投射型數字爲布爾
- 24. 什麼功能
- 25. 爲什麼不能重載RHR功能?
- 26. 爲什麼不能運行go功能?
- 27. 爲什麼equals在物品投射到物體時不能正常工作?
- 28. 爲什麼我不能將IEnumerable <T>列表投射到BindingList <t>?
- 29. 這個功能爲什麼這麼慢?
- 30. 爲什麼C功能這麼久?
Mahesh,考慮到這些類,在這裏試着再次理解,static_cast只在基本數據類型以外的指針上完成? – Lakshmi 2011-02-18 06:57:18