[英]How to check if a void* is to a pointer on a valid instance of an object type?
[英]How to check if Void pointer can be converted to other specific pointer type?
我有一個方法,它有一個空指針作為參數。 在方法的主體中,我想編寫一些代碼,只有當 void 指針可轉換為特定類型的指針(在我的情況下它是卡片*)時才應該執行。 如何檢查卡片是否可轉換為卡片指針?
沒有 C++ 語言功能可以做到這一點。
[不要這樣做] 一種可能的方法是使void*
指向存儲類型信息的特定已知類型的類和另一個void*
。 然后可以將第一個void*
轉換為包含類型的數據類型,確定該類型是否是您想要的類型,然后將嵌套的void*
轉換為所需的類型。
說了這么多,你想要解決的真正問題是什么? 有可能是一個C ++ -慣用的做法了這一點。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.