LongInt i1;
cin >> i1;
其中 LongInt 是一个包含整数堆栈的类。我想将输入存储到类的堆栈中,我认为这意味着我必须在类文件中重载>>运算符。问题是我不确定如何将 cin>>"111343241"等输入逐个数字推送到堆栈中。我将如何做到这一点?
要重载运算符本身,实现 get 循环,请定义命名空间范围
std::istream& operator >>(std::istream& is, LongInt& li) {
char c;
while( is.get(c).good() ) {
if( !std::isdigit(c) ) {
is.unget();
break;
}
...push it to li
}
return is;
}
如何将个位数推送到 LongInt 取决于您对 LongInt 的实现。