2015-06-21 87 views
0

我正在編寫一個實現簡單命令行計算器的代碼,並且我想爲用戶添加一個函數以用數值創建自己的變量,以便更好地進行計算。任何人都可以分享任何建議,我應該使用什麼技術?我想到了創建一個分配的二維字符串數組,後來只是轉換數值或使用模板,這樣的事情:用戶定義變量的C++程序

template<class T> 
void UserVariables(T varname, T varvalue){ 
T tArray[2][MAX_VARS]={ {varname1, varvalue1}, {varname2, varvalue2}, ... }; 
.... 
} 

也許還有什麼更好的,少noobie十歲上下的決定了嗎?提前致謝。

+6

我個人會用'的std :: map'從翻譯的'name'到'價值'(其中'價值'是你的計算器使用的任何類型,例如'double')。 –

+0

你不希望'varname'具有'T'類型嗎? – TonyK

回答

0

我看不出你的嘗試會如何工作 - 模板是在編譯時評估的,而不是運行時間,所以用戶不能在代碼運行時創建新的變量。