string类型加减乘除
有没有办法让用string类型定义的数字进行加减乘除,而不是相互连接呢;
#include<iostream>
#include<string>
using namespace std;
int main()
{
string a;
string s1, s2, s3, s4;
string sum;
system("pause>nul");
while (cin >> a)
{
/* if(!( || a.size()=13){ cout<<"不符合纯数字或长度"\ <<endl;
return -1; } */
for (size_t i = 6; i <= 9; ++i)
{
if (i == 6)
{
//s1(a[i]*1000);
}
if (i == 7)
{
s2 = a[i] * 100;
cout<<a[i]<<" "<<s2;
}
if (i == 8)
{
s3 = a[i] * 10;
}
if (i == 9)
{
s4 = a[i];
}
}
sum = s1 + s2 + s3 + s4;
string old("1995");
if (sum > old)
{
cout << "你的年龄未满18岁!" << endl;
}
else
{
cout << "已经满18岁勒" << endl;
}
}
return 0;
}
namespace std
{
string operator + (const string & str1, const string & str2)
{
...
}
}
struct strnum
{
std::string data;
strnum(const std::string & _data) : data(_data) {}
strnum operator + (const strnum & op2) const
{
...
}
}
class my_string
{
std::string str;
public:
my_string();
my_string(const std::string &v_str);
public:
friend const my_string operator+(const my_string &s1, const my_string &s2);
};