您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ DoCompare函数代码示例

51自学网 2021-06-01 20:28:54
  C++
这篇教程C++ DoCompare函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中DoCompare函数的典型用法代码示例。如果您正苦于以下问题:C++ DoCompare函数的具体用法?C++ DoCompare怎么用?C++ DoCompare使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了DoCompare函数的17个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: test_gte_lte

void 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_lte

void 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: switch

int 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: TypeCmp

typecmp_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_08

void 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_20

void 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_7

void 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_separators

void 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_19

void 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_18

void uneven_lengths_18(void){    assert_int_equal(DoCompare("1.0", "1.0-1", PACKAGE_VERSION_COMPARATOR_LT), true);}
开发者ID:nperron,项目名称:core,代码行数:4,


示例12: test_eq

void 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: compareHex

void 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_name

void 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_eq

void 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函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。