本文整理汇总了C++中Match::right1方法的典型用法代码示例。如果您正苦于以下问题:C++ Match::right1方法的具体用法?C++ Match::right1怎么用?C++ Match::right1使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Match
的用法示例。
在下文中一共展示了Match::right1方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: constructMatch
void MatcherMonomial::constructMatch( const Monomial & mona,int a,
const Monomial & monb,int b, const subMonomial & aINode,
const subMonomial & bINode, MATCHING_TYPES type,
Match & match ) const {
match.firstGBData = a;
match.secondGBData = b;
const int bStartm1 = bINode.start()-1;
MonomialIterator iter = monb.begin();
int i=1;
for(;i<=bStartm1;++i,++iter) {
match.left1() *= (* iter);
}
const int bNumFactor = monb.numberOfFactors();
int temp2 = bINode.start()+bINode.length();
if(temp2<=bNumFactor) {
MonomialIterator iter2 = monb.begin();
int jj = temp2-1;
while(jj) { ++iter2;--jj;};
for(int j=temp2;j<=bNumFactor;++j,++iter2) {
match.right1() *= (* iter2);
}
}
if(type==SUBSET_MATCH) {
match.subsetMatch = false;
match.overlapMatch = true;
} else if(type==OVERLAP_MATCH) {
match.subsetMatch = false;
match.overlapMatch = true;
const int aStartm1 = aINode.start()-1;
MonomialIterator iter3 = mona.begin();
for(i=1;i<=aStartm1;++i,++iter3) {
match.left2() *= (* iter3);
}
MonomialIterator iter4 = mona.begin();
const int temp4 = aINode.start()+aINode.length();
int jj = temp4-1;
while(jj) { ++iter4;--jj;};
for(int j=temp4;j<=mona.numberOfFactors();++j,++iter4) {
match.right2() *= (* iter4);
}
}
};