從C 表示變數名稱的字串存取變數值
在C 中,可以使用變數動態取得變數的值名稱作為字串。這種技術通常稱為反射,允許靈活的調試和自省功能。
要實現這一點,您可以利用以下步驟:
來取得變數位址:
轉換為指標:
template
T valueOf(const std::string& varName) {
T* varPtr = static_cast(std::addressof(varName));
return *varPtr;
}
為了使過程更方便,您可以創建一個函數,該函數採用表示變數名稱的字串並傳回變數的值。此函數簡化了上述步驟:用法:
template
T valueOf(const std::string& varName) {
T* varPtr = static_cast(std::addressof(varName));
return *varPtr;
}
透過valueOf函數,可動態取得變數值:
std::cout ("counter")免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3