2015-06-21 95 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

我看不出你的尝试会如何工作 - 模板是在编译时评估的,而不是运行时间,所以用户不能在代码运行时创建新的变量。