这篇教程C++ DoCompare函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中DoCompare函数的典型用法代码示例。如果您正苦于以下问题:C++ DoCompare函数的具体用法?C++ DoCompare怎么用?C++ DoCompare使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了DoCompare函数的17个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: test_gte_ltevoid test_gte_lte(void){ assert_int_equal(DoCompare("1.0-1", "1.0-1", PACKAGE_VERSION_COMPARATOR_GE), VERCMP_MATCH); assert_int_equal(DoCompare("1.0-1", "1.0-2", PACKAGE_VERSION_COMPARATOR_GE), VERCMP_NO_MATCH); assert_int_equal(DoCompare("1.0-2", "1.0-1", PACKAGE_VERSION_COMPARATOR_GE), VERCMP_MATCH); assert_int_equal(DoCompare("1.0-1", "1.0-1", PACKAGE_VERSION_COMPARATOR_LE), VERCMP_MATCH); assert_int_equal(DoCompare("1.0-1", "1.0-2", PACKAGE_VERSION_COMPARATOR_LE), VERCMP_MATCH); assert_int_equal(DoCompare("1.0-2", "1.0-1", PACKAGE_VERSION_COMPARATOR_LE), VERCMP_NO_MATCH);}
开发者ID:cduclos,项目名称:core,代码行数:9,
示例2: test_gte_ltevoid test_gte_lte(void){ assert_int_equal(DoCompare("1.0-1", "1.0-1", PACKAGE_VERSION_COMPARATOR_GE), true); assert_int_equal(DoCompare("1.0-1", "1.0-2", PACKAGE_VERSION_COMPARATOR_GE), false); assert_int_equal(DoCompare("1.0-2", "1.0-1", PACKAGE_VERSION_COMPARATOR_GE), true); assert_int_equal(DoCompare("1.0-1", "1.0-1", PACKAGE_VERSION_COMPARATOR_LE), true); assert_int_equal(DoCompare("1.0-1", "1.0-2", PACKAGE_VERSION_COMPARATOR_LE), true); assert_int_equal(DoCompare("1.0-2", "1.0-1", PACKAGE_VERSION_COMPARATOR_LE), false);}
开发者ID:nperron,项目名称:core,代码行数:9,
示例3: switchint MultiSortFilterProxy::Compare(const QVariant& left, const QVariant& right) const { // Copied from the QSortFilterProxyModel::lessThan implementation, but returns // -1, 0 or 1 instead of true or false. switch (left.userType()) { case QVariant::Invalid: return (right.type() != QVariant::Invalid) ? -1 : 0; case QVariant::Int: return DoCompare(left.toInt(), right.toInt()); case QVariant::UInt: return DoCompare(left.toUInt(), right.toUInt()); case QVariant::LongLong: return DoCompare(left.toLongLong(), right.toLongLong()); case QVariant::ULongLong: return DoCompare(left.toULongLong(), right.toULongLong()); case QMetaType::Float: return DoCompare(left.toFloat(), right.toFloat()); case QVariant::Double: return DoCompare(left.toDouble(), right.toDouble()); case QVariant::Char: return DoCompare(left.toChar(), right.toChar()); case QVariant::Date: return DoCompare(left.toDate(), right.toDate()); case QVariant::Time: return DoCompare(left.toTime(), right.toTime()); case QVariant::DateTime: return DoCompare(left.toDateTime(), right.toDateTime()); case QVariant::String: default: if (isSortLocaleAware()) return left.toString().localeAwareCompare(right.toString()); else return left.toString().compare(right.toString(), sortCaseSensitivity()); } return 0;}
开发者ID:Aceler,项目名称:Clementine,代码行数:37,
示例4: TypeCmptypecmp_t TypeCmp (const Type* lhs, const Type* rhs)/* Compare two types and return the result */{ /* Assume the types are identical */ typecmp_t Result = TC_IDENTICAL;#if 0 printf ("Left : "); PrintRawType (stdout, lhs); printf ("Right: "); PrintRawType (stdout, rhs);#endif /* Recursively compare the types if they aren't identical */ if (rhs != lhs) { DoCompare (lhs, rhs, &Result); } /* Return the result */ return Result;}
开发者ID:JackieXie168,项目名称:cc65,代码行数:19,
示例5: invalid_08void invalid_08(void){ assert_int_equal(DoCompare("1.0", "text-1.0", PACKAGE_VERSION_COMPARATOR_GT), VERCMP_ERROR);}
开发者ID:cduclos,项目名称:core,代码行数:4,
示例6: uneven_lengths_20void uneven_lengths_20(void){ assert_int_equal(DoCompare("1.0", "1.0-1", PACKAGE_VERSION_COMPARATOR_LE), VERCMP_MATCH);}
开发者ID:cduclos,项目名称:core,代码行数:4,
示例7: uneven_lengths_7void uneven_lengths_7(void){ assert_int_equal(DoCompare("1.0", "1.0.1", PACKAGE_VERSION_COMPARATOR_GT), VERCMP_NO_MATCH);}
开发者ID:cduclos,项目名称:core,代码行数:4,
示例8: wrong_separatorsvoid wrong_separators(void){ assert_int_equal(DoCompare("1.0", "1,0", PACKAGE_VERSION_COMPARATOR_EQ), VERCMP_ERROR);}
开发者ID:cduclos,项目名称:core,代码行数:4,
示例9: DoOneExternalTest//.........这里部分代码省略......... cmdResult = ExecuteCommand(pDir->GetFullPathFromSourceOrDirectory(), cmdbuf, millisecTimeout, envFlags); if (cmdResult && cmdResult != WAIT_TIMEOUT && !pTestVariant->testInfo.data[TIK_BASELINE]) // failure code, not baseline diffing { fFailed = TRUE; sprintf_s(nonZeroReturnBuf, "non-zero (%08X) return value from test command", cmdResult); reason = nonZeroReturnBuf; goto logFailure; } } else { ASSERTNR(UNREACHED); cmdResult = NOERROR; // calm compiler warning about uninitialized variable usage } // Check for timeout. if (cmdResult == WAIT_TIMEOUT) { ASSERT(millisecTimeout != INFINITE); sprintf_s(nonZeroReturnBuf, "timed out after %u second%s", millisecTimeout / 1000, millisecTimeout == 1000 ? "" : "s"); reason = nonZeroReturnBuf; fFailed = TRUE; goto logFailure; } // If we have a baseline test, we need to check the baseline file. if (pTestVariant->testInfo.data[TIK_BASELINE]) { char baseline_file[_MAX_PATH]; sprintf_s(baseline_file, "%s//%s", pDir->GetFullPathFromSourceOrDirectory(), pTestVariant->testInfo.data[TIK_BASELINE]); if (DoCompare(baseline_file, full, pTestVariant->testInfo.hasData[TIK_EOL_NORMALIZATION])) { reason = "diffs from baseline"; sprintf_s(optReportBuf, "%s", baseline_file); fFailed = TRUE; CopyRebaseFile(full, baseline_file); } } else if ((kind == TK_JSCRIPT || kind == TK_HTML || kind == TK_COMMAND) && !pTestVariant->testInfo.hasData[TIK_BASELINE]) { if (!CheckForPass(full, optReportBuf, cmdbuf, fDumpOutputFile)) { fFailed = TRUE; goto SkipLogFailure; } }logFailure: if (fFailed) { LogOut("ERROR: Test failed to run correctly: %s (%s):", reason, optReportBuf); LogOut(" %s", cmdbuf); if (fDumpOutputFile) { DumpFileToLog(full); } }SkipLogFailure: if (fFileToDelete && !FNoDelete) { DeleteFileRetryMsg(full); } elapsed_variation = (int)(time(NULL) - start_variation); if (Timing & TIME_VARIATION) { Message("RL: Variation elapsed time (%s, %s, %s): %02d:%02d", pDir->GetDirectoryName(),
开发者ID:mrkmarron,项目名称:ChakraCore,代码行数:67,
示例10: uneven_lengths_19void uneven_lengths_19(void){ assert_int_equal(DoCompare("1.0", "1.0-1", PACKAGE_VERSION_COMPARATOR_GE), false);}
开发者ID:nperron,项目名称:core,代码行数:4,
示例11: uneven_lengths_18void uneven_lengths_18(void){ assert_int_equal(DoCompare("1.0", "1.0-1", PACKAGE_VERSION_COMPARATOR_LT), true);}
开发者ID:nperron,项目名称:core,代码行数:4,
示例12: test_eqvoid test_eq(void){ assert_int_equal(DoCompare("1.0-1", "1.0-1", PACKAGE_VERSION_COMPARATOR_EQ), true); assert_int_equal(DoCompare("1.0-1", "1.0-1", PACKAGE_VERSION_COMPARATOR_NONE), true); assert_int_equal(DoCompare("1.0-1", "1.0-2", PACKAGE_VERSION_COMPARATOR_EQ), false);}
开发者ID:nperron,项目名称:core,代码行数:6,
示例13: compareHexvoid compareHex(void){ DoCompare(); DialogUpdate(); setMenu();}
开发者ID:zxjqazwsx,项目名称:HexEditor_0_9_5_git,代码行数:6,
示例14: DoOneSimpleTest//.........这里部分代码省略......... // Make sure the output file isn't there. DeleteFileIfFound(tmp_file1); fFailed = FALSE; // Check for timeout. { int retval = ExecuteCommand(pDir->GetDirectoryPath(), buf, millisecTimeout, envFlags); if (retval == WAIT_TIMEOUT) { ASSERT(millisecTimeout != INFINITE); LogOut("ERROR: Test timed out after %ul seconds", millisecTimeout / 1000); fFailed = TRUE; goto logFailure; } } // Check the output. if (pTestVariant->testInfo.data[TIK_BASELINE]) { int spiff_ret; // Check to see if the exe ran at all. if (GetFileAttributes(tmp_file1) == INVALID_FILE_ATTRIBUTES) { LogOut("ERROR: Test failed to run. Couldn't find file '%s' (%s):", tmp_file1, optReportBuf); LogOut(" %s", cmdbuf); fFailed = TRUE; } else { sprintf_s(full, "%s//%s", pDir->GetFullPathFromSourceOrDirectory(), pTestVariant->testInfo.data[TIK_BASELINE]); if (DoCompare(tmp_file1, full, pTestVariant->testInfo.hasData[TIK_EOL_NORMALIZATION])) { // Output differs, run spiff to see if it's just minor // floating point anomalies. DeleteFileIfFound(tmp_file2); sprintf_s(buf, "spiff -m -n -s /"command spiff/" %s %s > %s", tmp_file1, full, tmp_file2); spiff_ret = ExecuteCommand(pDir->GetDirectoryPath(), buf); if (GetFileAttributes(tmp_file2) == INVALID_FILE_ATTRIBUTES) { LogError("ERROR: spiff failed to run"); fFailed = TRUE; } else if (spiff_ret) { LogOut("ERROR: Test failed to run correctly. spiff returned %d (%s):", spiff_ret, optReportBuf); LogOut(" %s", cmdbuf); fFailed = TRUE; } } } } else { if (!CheckForPass(tmp_file1, optReportBuf, cmdbuf)) { fFailed = TRUE; } }logFailure: if (fFailed) { if (FCopyOnFail) { if (FVerbose) Message("INFO: Copying '%s' failure", optReportBuf);
开发者ID:mrkmarron,项目名称:ChakraCore,代码行数:67,
示例15: test_different_namevoid test_different_name(void){ EvalContext *ctx = EvalContextNew(); PromiseResult result; PackageItem pi = { .name = "pkgone", .version = "1", .arch = "arch" }; Attributes attr = { .packages = { .package_select = PACKAGE_VERSION_COMPARATOR_EQ } }; assert_int_equal(ComparePackages(ctx, "pkgtwo", "1", "arch", &pi, attr, NULL, "test", &result), VERCMP_NO_MATCH); EvalContextDestroy(ctx);}void test_wildcard_arch(void){ EvalContext *ctx = EvalContextNew(); PromiseResult result; PackageItem pi = { .name = "foobar", .version = "1", .arch = "arch" }; Attributes attr = { .packages = { .package_select = PACKAGE_VERSION_COMPARATOR_EQ } }; assert_int_equal(ComparePackages(ctx, "foobar", "1", "*", &pi, attr, NULL, "test", &result), VERCMP_MATCH); EvalContextDestroy(ctx);}void test_non_matching_arch(void){ EvalContext *ctx = EvalContextNew(); PromiseResult result; PackageItem pi = { .name = "foobar", .version = "1", .arch = "s390x" }; Attributes attr = { .packages = { .package_select = PACKAGE_VERSION_COMPARATOR_EQ } }; assert_int_equal(ComparePackages(ctx, "foobar", "1", "s390", &pi, attr, NULL, "test", &result), VERCMP_NO_MATCH); EvalContextDestroy(ctx);}VersionCmpResult DoCompare(const char *lhs, const char *rhs, PackageVersionComparator cmp){ EvalContext *ctx = EvalContextNew(); PromiseResult result; PackageItem pi = { .name = "foobar", .version = (char*)lhs, .arch = "somearch" }; Attributes a = { .packages = { .package_select = cmp, } }; VersionCmpResult cmp_result = ComparePackages(ctx, "foobar", rhs, "somearch", &pi, a, NULL, "test", &result); EvalContextDestroy(ctx); return cmp_result;}void test_wildcard_version(void){ assert_int_equal(DoCompare("1.0-1", "*", PACKAGE_VERSION_COMPARATOR_EQ), VERCMP_MATCH);}
开发者ID:cduclos,项目名称:core,代码行数:90,
示例16: test_eqvoid test_eq(void){ assert_int_equal(DoCompare("1.0-1", "1.0-1", PACKAGE_VERSION_COMPARATOR_EQ), VERCMP_MATCH); assert_int_equal(DoCompare("1.0-1", "1.0-1", PACKAGE_VERSION_COMPARATOR_NONE), VERCMP_MATCH); assert_int_equal(DoCompare("1.0-1", "1.0-2", PACKAGE_VERSION_COMPARATOR_EQ), VERCMP_NO_MATCH);}
开发者ID:cduclos,项目名称:core,代码行数:6,
示例17: HandleElemProcs//.........这里部分代码省略......... case PADNOPATTERN: StkC();ppgm->Append(new pgmchpush((UNCH *)" "));break;/* 101 <pad pattern ::=> , <char expression> */ case PADPATTERN: MkC(ppgm); break;/* 102 <pad position ::=> */ case PADBACK1: StkN();ppgm->Append(new pgmintstk(0)); break;/* 103 <pad position ::=> FRONT , */ case PADFRONT: StkN();ppgm->Append(new pgmintstk(1)); break;/* 104 <pad position ::=> BACK , */ case PADBACK2: StkN();ppgm->Append(new pgmintstk(0)); break;//* 67 <arith expression ::=> <arith expression> + <arith term> */ case ARITHEXPPLUS: Mk2N(ppgm); sp--;ppgm->Append(new pgmbinop(add));break;/* 68 <arith expression ::=> <arith expression> - <arith term> */ case ARITHEXPMINUS: Mk2N(ppgm); sp--;ppgm->Append(new pgmbinop(subt));break;/* 70 <signed term ::=> - <arith term> */ case ARITHEXPUMINUS: MkN(ppgm);ppgm->Append(new pgmunop(unneg));break;/* 73 <arith term ::=> <arith term> * <arith primary> */ case ARITHEXPTIMES: Mk2N(ppgm); sp--;ppgm->Append(new pgmbinop(mult));break;/* 74 <arith term ::=> <arith term> / <arith primary> */ case ARITHEXPDIV: Mk2N(ppgm); sp--;ppgm->Append(new pgmbinop(adiv));break;/* 77 <arith item ::=> <number> */ case ARITHEXPNUMB: StkN();ppgm->Append(new pgmintstk(atoi((char *)item->IntStr())));break;/* 121 <arith item ::=> FIND ( <char expression> , <char expression> ) */ case ARITHEXPFIND: Mk2C(ppgm); sp-=2; StkN();ppgm->Append(new pgmfind); break;/* 82 <arith item ::=> MAX ( <arith expression> , <arith expression> ) */ case ARITHEXPMAX: Mk2N(ppgm);sp--;ppgm->Append(new pgmbinop(amax));break;/* 83 <arith item ::=> MIN ( <arith expression> , <arith expression> ) */ case ARITHEXPMIN: Mk2N(ppgm);sp--;ppgm->Append(new pgmbinop(amin));break;/* 85 <arith item ::=> LENGTH ( <char expression> ) */ case ARITHEXPLEN: MkC(ppgm);tstk[sp-1] = valnumb;ppgm->Append(new pgmunop(unlen));break;/* 98 <name or attrib ::=> <var name> */ case GETTACTGLOBAL: w = (varitem *)item; ppgm->Append(new pgmvarld(w->Vardata()->pos(),tstk[sp++]=w->Vardata()->type())); break;/* 100 <attribute ::=> . <name> */ case LOADLOCALATTRIB: if (numbeles == 1)BuildAttrRef(ppgm, segetd, item->IntStr()); else BuildAttrRef2(ppgm, item->IntStr()); break;/* 101 <attribute ::=> <the element> . <name> */ case LOADELEMATTRIB: BuildAttrRef(ppgm, thisetd, item->IntStr()); break;/* 102 <the element ::=> <element name> */ case SAVEELEMENT: thisetd = ((etditem *)item)->MyEtd(); break;/* 124 <if start ::=> IF <logical expression> THEN <statement end> */ case IFSTART: ppgm->StartIf(); sp--; ifstk[++ifptr] = 1; // note first ifstk element is not used break;/* 132 <elsif line ::=> <elsif id> <logical expression> THEN <statement end> */ case ELSEIFCOND: ppgm->StartIf(); sp--; break;/* 133 <elsif id ::=> ELSE IF */ case ELSEIFSTART: ppgm->StartElse(); ++ifstk[ifptr]; break;/* 126 <ELSE ID ::=> ELSE <statement end> */ case IFELSESTART: ppgm->StartElse(); break;/* 127 <end if ::=> END <statement end> */ case IFEND: ppgm->EndIf(ifstk[ifptr--]); break;/* 129 <while test ::=> <WHILE ID> <logical expression> <statement end> */ case WHILECOND: ppgm->WhileCond(); sp--; break;/* 130 <WHILE ID ::=> WHILE */ case WHILESTART: ppgm->StartWhile(); break;/* 131 <end while ::=> END <statement end> */ case WHILEEND: ppgm->EndWhile(); break;/* 113 <logical expression ::=> <logical expression> OR <logical term> */ case LOGOR: Mk2N(ppgm);sp--;ppgm->Append(new pgmbinop(lor));break;/* 115 <logical term ::=> <logical term> AND <signed logical term> */ case LOGAND: Mk2N(ppgm);sp--;ppgm->Append(new pgmbinop(land));break;/* 117 <signed logical term ::=> NOT <logical primary> */ case LOGNOT: MkN(ppgm);ppgm->Append(new pgmunop(unlneg));break;/* 107 <logical primary ::=> ON */ case LOGEXPON: StkN();ppgm->Append(new pgmintstk(1));break;/* 108 <logical primary ::=> OFF */ case LOGEXPOFF: StkN();ppgm->Append(new pgmintstk(0));break;/* 166 <in funct elem ::=> <element name> */ case DOINFUNCT:/* 167 <is funct elem ::=> <element name> */ case DOISFUNCT: StkN(); fetd = ((etditem *)item)->MyEtd(); if (prod == DOINFUNCT)ppgm->Append(new pgminelem(fetd->etdgi)); else ppgm->Append(new pgmiselem(fetd->etdgi)); break;/* 122 <compare ::=> <exp 1> = <exp 2> */ case COMPEQU: DoCompare(ppgm,aeq,ceq); break;/* 123 <compare ::=> <exp 1> ~ = <exp 2> */ case COMPNOTEQU: DoCompare(ppgm,ane,cne); break;/* 124 <compare ::=> <exp 1> "> <exp 2> */ case COMPGT: DoCompare(ppgm,agt,cgt); break;/* 125 <compare ::=> <exp 1> "< <exp 2> */ case COMPLT: DoCompare(ppgm,alt,clt); break;/* 126 <compare ::=> <exp 1> "> = <exp 2> */ case COMPGE: DoCompare(ppgm,age,cge); break;/* 127 <compare ::=> <exp 1> "< = <exp 2> */ case COMPLE: DoCompare(ppgm,ale,cle); break; } } while ((prod != 1)&&(prod <= 1000)); if (prod > 1000) exit(1); delete scnr;};
开发者ID:johnBradley501,项目名称:TACT,代码行数:101,
注:本文中的DoCompare函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ DoDataExchange函数代码示例 C++ DoCommandP函数代码示例 |