[問題] 問過時的問題hw1.2最後一題

看板EE_DSnP作者 (hi)時間16年前 (2008/04/09 22:54), 編輯推噓4(403)
留言7則, 3人參與, 最新討論串1/1
不好意思 剛才翻了一下我手上有的書發現上面叫我們不要使用 reinterpret_cast 而我原本是寫成 size_t getSize(T *arr) { size_t *p = reinterpret_cast<size_t*> (arr - 1); return *p; } 想問問這題比較好的寫法是什麼呢@@,這裡可以問過時的問題嗎逃~~~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.160.75.238

04/09 23:46, , 1F
這個只能用reinterpret_cast
04/09 23:46, 1F

04/09 23:54, , 2F
為什麼只能用reinterpret_cast??不能直接用強制轉型嗎
04/09 23:54, 2F

04/09 23:56, , 3F
用blah_cast<>()至少compiler還可以幫忙檢查一下
04/09 23:56, 3F

04/09 23:57, , 4F
直接用強制轉型的話compiler就一點辦法都沒有了
04/09 23:57, 4F

04/09 23:57, , 5F
特別是像dynamic_cast之類
04/09 23:57, 5F

04/10 02:03, , 6F
恩謝謝~~其實書上只是說盡量不要使用blah_cast..
04/10 02:03, 6F

04/10 08:47, , 7F
盡量用const_cast, dynamic_cast, static_cast
04/10 08:47, 7F
文章代碼(AID): #17_DYPMs (EE_DSnP)