本文整理汇总了C++中OrderList::front方法的典型用法代码示例。如果您正苦于以下问题:C++ OrderList::front方法的具体用法?C++ OrderList::front怎么用?C++ OrderList::front使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OrderList
的用法示例。
在下文中一共展示了OrderList::front方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: matchOrders
void OrderMatcher::matchOrders(TradeList& tradeList, OrderList& buyList, OrderList& sellList, Decimal price)
{
if (verbose)
cout << endl << "Matching orders..." << endl;
if (buyList.size() == 0 || sellList.size() == 0)
return;
Order buyOrder = buyList.front();
Order sellOrder = sellList.front();
bool finished = false;
while (!finished && buyOrder.getPrice() >= price && sellOrder.getPrice() <= price)
{
uint32_t amount = std::min(buyOrder.getAmount(), sellOrder.getAmount());
Trade trade(amount, price, buyOrder, sellOrder);
tradeList.push_back(trade);
buyOrder.decreaseAmount(amount);
sellOrder.decreaseAmount(amount);
if (buyOrder.getAmount() == 0)
{
buyList.pop_front();
if (buyList.size() > 0)
buyOrder = buyList.front();
else
finished = true;
}
if (sellOrder.getAmount() == 0)
{
sellList.pop_front();
if (sellList.size() > 0)
sellOrder = sellList.front();
else
finished = true;
}
}
}