一个计算四则表达式的模板
在9月8日那天我特意编写的,给大家分享的,一个很方便的函数模板,可以并且只可以计算含括号的四则表达式!H-_ x2o#f;t
只有一个函数接口:int GetExpValue(_Tstream& istrin, _T& nReturn),^ Z_k%yF2l
参数解释:GQ ][Y)r~f5Wz w
istrin: 一个输入流,可以是标准IO流,可以是文件流,也可以是串流
nReturn:用于接收计算结果的变量,计算所使用的类型由这个变量确定!Vr7]j`Id{~y
返回值:
返回非0表示计算成功,0表示计算失败有错误
.yfw'L$^&Q/zW
程序代码:
YO2]wy1j1D&b{
namespace fy_Exp{
namespace {template <class _T>:b"uuQ q#rF$~3}
inline _T GetExpValue(_T t[], char& csym){?5{4~ V6u{(o9e
char c=csym; csym=0;
switch(c){
case '+':return t[0] += t[1];8Jb O3?qop
case '-':return t[0] -= t[1];:MK#h;r1^n-O
case '*':return t[0] *= t[1];R{&sSo,L,c%d
default: return t[0] /= t[1];//case '/':
}