本文整理汇总了C++中FIFO::Push方法的典型用法代码示例。如果您正苦于以下问题:C++ FIFO::Push方法的具体用法?C++ FIFO::Push怎么用?C++ FIFO::Push使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FIFO
的用法示例。
在下文中一共展示了FIFO::Push方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: exit
//------------------------------------------------------------------------------
BigNumber operator+ (BigNumber x1, BigNumber x2) {
int carry=0;
int result;
BigNumber temp;
FIFO fifo;
if (x1.Count()<x2.Count()) {
temp=x1;
x1=x2;
x2=temp;
}
//temp.DeleteList(); //????????????????????????????????
TNode *temp_x1=x1.last;
TNode *temp_x2=x2.last;
TNode *temp_result=temp.last;//???????????????????????
for (int i=0;i<x2.Count();i++) { //Ѕлок протестирован
result=temp_x1->data+temp_x2->data+carry;
carry=(int)(result/1000);
fifo.Push(result%1000);
temp_x1=temp_x1->prev;
temp_x2=temp_x2->prev;
}
if ( (x2.Count()==x1.Count() ) && (carry!=0) )
fifo.Push(carry);
else {
for (int i=x2.Count();i<x1.Count();i++) {
result=temp_x1->data+carry;
carry=(int)(result/1000);
fifo.Push(result%1000);
temp_x1=temp_x1->prev;
}
if (carry!=0)
fifo.Push(carry);
}
int count=fifo.Count();
for (int i=0;i<count;i++) {
if (!fifo.Pop(result)) {
cout <<"Error\n";
exit(-1);
}
temp.AddBefore(temp.root,result);
}
return temp;
}