本文整理汇总了C++中ViewArray::drop_fst方法的典型用法代码示例。如果您正苦于以下问题:C++ ViewArray::drop_fst方法的具体用法?C++ ViewArray::drop_fst怎么用?C++ ViewArray::drop_fst使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ViewArray
的用法示例。
在下文中一共展示了ViewArray::drop_fst方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: while
inline ExecStatus
Single<View>::post(Home home, ViewArray<View>& x, int s, int t) {
{
int alpha = 0;
while ((alpha < x.size()) && !x[alpha].in(s))
GECODE_ME_CHECK(x[alpha++].nq(home,t));
x.drop_fst(alpha);
if (x.size() == 0)
return ES_OK;
}
// alpha has been normalized to 0
int beta = 0, gamma = 0;
GECODE_ME_CHECK(x[0].nq(home,t));
do {
gamma++;
} while ((gamma < x.size()) && !assigned(x[gamma],t));
do {
beta++;
} while ((beta < x.size()) && !x[beta].in(s));
if (beta > gamma) {
GECODE_ME_CHECK(x[0].eq(home, s));
return ES_OK;
}
if (gamma < x.size())
x.drop_lst(gamma);
(void) new (home) Single<View>(home, x, s, t, beta, gamma);
return ES_OK;
}