這是在C++ 例如個人使用的應用程序:有沒有辦法讓用戶選擇要輸入的變量?
class x
{...};
int main()
{
string userinput;
cin>>userinput;
cin>>x."userinput";}
是這樣的可能嗎?
這是在C++ 例如個人使用的應用程序:有沒有辦法讓用戶選擇要輸入的變量?
class x
{...};
int main()
{
string userinput;
cin>>userinput;
cin>>x."userinput";}
是這樣的可能嗎?
如果你正在談論的是允許用戶在運行時設置變量名,那麼沒有。這在C++中是不可能的。根據你想要達到的目標,有幾種解決方法。
如果你只需要用戶能夠訪問一個小數目的變量,所有的手之前是已知的,可以使用switch
聲明,或一堆if/elseif
小號
如果您需要存儲大量變量,其中編號時可能不知道的變量數量,則存在許多僅用於此目的的數據結構。上面有數組,哈希表,鏈表和數百個變體。然而,這些都是太複雜的話題,只能在一個答案中涵蓋。
不,我想在運行時設置變量名我想在運行時輸入一個特定的變量,這是我選擇的。使用switch case/if-else是我考慮過的事情,但我可能會有更好的解決方案,所以我在這裏問了一下。我會研究哈希表並嘗試實現它。謝謝您的幫助! – nunya
如果我正確理解你的問題。您需要爲'class x'重載'operator >>'。 –
如果我正確理解你的問題:沒有這樣的事情是不可能的,因爲C++沒有任何運行時反射設施。 –
它可能是一個哈希表。而不是變量你只是使用散列索引 – Psi