[英]overloading >> operator for stack list class
LongInt i1;
cin >> i1;
其中 LongInt 是一個 class,它包含一個整數棧。 我想將輸入存儲到 class 中的堆棧中,我認為這意味着我必須在我的 class 文件中重載 >> 運算符。 問題是我不確定如何將像 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 的實現。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.