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

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

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

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

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

示例1: falling_factorial

 inline var falling_factorial(const double& a,                              const var& b) {   return var(new falling_factorial_dv_vari(a, b.vi_)); }
开发者ID:alyst,项目名称:math,代码行数:4,


示例2: CMod

			} else {				NDebugOverlay::Line(begin, end, 0xff, 0x00, 0x00, true, 10.0f);			}									// ...		}				return result;	}			class CMod : public IMod	{	public:		CMod() : IMod("Visualize:Melee_Range")		{			MOD_ADD_DETOUR_MEMBER(CTFWeaponBaseMelee_DoSwingTraceInternal, "CTFWeaponBaseMelee::DoSwingTraceInternal");		}	};	CMod s_Mod;			ConVar cvar_enable("sig_visualize_melee_range", "0", FCVAR_NOTIFY,		"Visualization: melee range and bounds",		[](IConVar *pConVar, const char *pOldValue, float flOldValue) {			ConVarRef var(pConVar);			s_Mod.Toggle(var.GetBool());		});}
开发者ID:sigsegv-mvm,项目名称:sigsegv-mvm,代码行数:30,


示例3: desugar

    void desugar(AST *&ast_)    {        if (auto *ast = dynamic_cast<Apply*>(ast_)) {                            desugar(ast->target);            for (AST *&arg : ast->arguments)                desugar(arg);        } else if (auto *ast = dynamic_cast<Array*>(ast_)) {            for (AST *&el : ast->elements)                desugar(el);        } else if (auto *ast = dynamic_cast<ArrayComprehension*>(ast_)) {            for (ComprehensionSpec &spec : ast->specs)                desugar(spec.expr);            desugar(ast->body);            int n = ast->specs.size();            AST *zero = make<LiteralNumber>(E, 0.0);            AST *one = make<LiteralNumber>(E, 1.0);            auto *_r = id(U"$r");            auto *_l = id(U"$l");            std::vector<const Identifier*> _i(n);            for (int i = 0; i < n ; ++i) {                StringStream ss;                ss << U"$i_" << i;                _i[i] = id(ss.str());            }            std::vector<const Identifier*> _aux(n);            for (int i = 0; i < n ; ++i) {                StringStream ss;                ss << U"$aux_" << i;                _aux[i] = id(ss.str());            }            // Build it from the inside out.  We keep wrapping 'in' with more ASTs.            assert(ast->specs[0].kind == ComprehensionSpec::FOR);            int last_for = n - 1;            while (ast->specs[last_for].kind != ComprehensionSpec::FOR)                last_for--;            // $aux_{last_for}($i_{last_for} + 1, $r + [body])            AST *in = make<Apply>(                ast->body->location,                var(_aux[last_for]),                std::vector<AST*> {                    make<Binary>(E, var(_i[last_for]), BOP_PLUS, one),                    make<Binary>(E, var(_r), BOP_PLUS, singleton(ast->body))                },                true  // tailstrict            );            for (int i = n - 1; i >= 0 ; --i) {                const ComprehensionSpec &spec = ast->specs[i];                AST *out;                if (i > 0) {                    int prev_for = i - 1;                    while (ast->specs[prev_for].kind != ComprehensionSpec::FOR)                        prev_for--;                    // aux_{prev_for}($i_{prev_for} + 1, $r)                    out = make<Apply>(  // False branch.                        E,                        var(_aux[prev_for]),                         std::vector<AST*> {                            make<Binary>(E, var(_i[prev_for]), BOP_PLUS, one), var(_r)},                        true  // tailstrict                    );                } else {                    out = var(_r);                }                switch (spec.kind) {                    case ComprehensionSpec::IF: {                        /*                            if [[[...cond...]]] then                                [[[...in...]]]                            else                                [[[...out...]]]                        */                        in = make<Conditional>(                            ast->location,                            spec.expr,                            in,  // True branch.                            out);  // False branch.                    } break;                    case ComprehensionSpec::FOR: {                        /*                            local $l = [[[...array...]]];                            local aux_{i}(i_{i}, r) =                                if i_{i} >= std.length(l) then                                    [[[...out...]]]                                else                                    local [[[...var...]]] = l[i_{i}];                                    [[[...in...]]]                            aux_{i}(0, r) tailstrict;                        */                        in = make<Local>(                            ast->location,                            Local::Binds {                                {_l, spec.expr},                                {_aux[i], make<Function>(//.........这里部分代码省略.........
开发者ID:johnboiles,项目名称:jsonnet,代码行数:101,


示例4: while

void PHPSourceFile::ParseFunctionSignature(int startingDepth){    phpLexerToken token;    if(startingDepth == 0) {        // loop until we find the open brace        while(NextToken(token)) {            if(token.type == '(') {                ++startingDepth;                break;            }        }        if(startingDepth == 0) return;    }    // at this point the 'depth' is 1, as we already read the open brace    int depth = 1;    wxString typeHint;    wxString defaultValue;    PHPEntityVariable* var(NULL);    bool collectingDefaultValue = false;    while(NextToken(token)) {        switch(token.type) {        case kPHP_T_VARIABLE:            if(!var) {                // var can be non null if we are parsing PHP-7 function arguments                // with type-hinting                var = new PHPEntityVariable();            }            var->SetFullName(token.text);            var->SetLine(token.lineNumber);            var->SetFilename(m_filename);            // Mark this variable as function argument            var->SetFlag(kVar_FunctionArg);            if(typeHint.EndsWith("&")) {                var->SetIsReference(true);                typeHint.RemoveLast();            }            var->SetTypeHint(MakeIdentifierAbsolute(typeHint));            break;        case '(':            depth++;            if(collectingDefaultValue) {                defaultValue << "(";            }            break;        case ')':            depth--;            // if the depth goes under 1 - we are done            if(depth < 1) {                if(var) {                    var->SetDefaultValue(defaultValue);                    CurrentScope()->AddChild(PHPEntityBase::Ptr_t(var));                }                return;            } else if(depth) {                defaultValue << token.text;            }            break;        case '=':            // default value            collectingDefaultValue = true;            break;        case ',':            if(var) {                var->SetDefaultValue(defaultValue);                CurrentScope()->AddChild(PHPEntityBase::Ptr_t(var));            }            var = NULL;            typeHint.Clear();            defaultValue.Clear();            collectingDefaultValue = false;            break;        case kPHP_T_IDENTIFIER:            if(!var) {                // PHP-7 type hinting function arguments                var = new PHPEntityVariable();                UngetToken(token);                typeHint = ReadType();                if(!typeHint.IsEmpty()) {                    break;                }            }        // all "else" cases simply fall into the default case        default:            if(collectingDefaultValue) {                defaultValue << token.text;            } else {                typeHint << token.text;            }            break;        }    }}
开发者ID:292388900,项目名称:codelite,代码行数:95,


示例5: Q_ASSERT

QByteArray GraphExport::generateBin(){    GraphCurve *c = m_curves->at(ui->curveBox->itemData(ui->curveBox->currentIndex()).toInt())->curve;    Q_ASSERT(c);    QByteArray bin;    QBuffer buff(&bin);    buff.open(QIODevice::WriteOnly);    bool big = !ui->endianBox->currentIndex();    int idxW = (1 << ui->idxWidthBox->currentIndex());    for(quint32 i = 0; i < c->getSize(); ++i)    {        emit updateProgress(i*100/c->getSize());        if(ui->indexBox->isChecked())        {            quint64 idx = i;            Utils::swapEndian(idx);            if(!big)                Utils::swapEndian(((char*)&idx)+(sizeof(idx)-idxW), idxW);            buff.write(((char*)&idx)+(sizeof(idx)-idxW), idxW);        }        qreal s = c->sample(i).y();        switch(c->getDataType())        {            case NUM_FLOAT:            {                float f = s;                buff.write((char*)&f, sizeof(f));                break;            }            case NUM_DOUBLE:                buff.write((char*)&s, sizeof(s));                break;            default:            {                QVariant var(s);                switch(c->getDataType())                {                    case NUM_UINT8:                    case NUM_INT8:                    {                        quint8 y = var.toInt();                        if(big) Utils::swapEndian((char*)&y, sizeof(y));                        buff.write((char*)&y, sizeof(y));                        break;                    }                    case NUM_UINT16:                    case NUM_INT16:                    {                        quint16 y = var.toInt();                        if(big) Utils::swapEndian((char*)&y, sizeof(y));                        buff.write((char*)&y, sizeof(y));                        break;                    }                    case NUM_UINT32:                    case NUM_INT32:                    {                        quint32 y = var.toInt();                        if(big) Utils::swapEndian((char*)&y, sizeof(y));                        buff.write((char*)&y, sizeof(y));                        break;                    }                    case NUM_UINT64:                    case NUM_INT64:                    {                        quint64 y = var.toLongLong();                        if(big) Utils::swapEndian((char*)&y, sizeof(y));                        buff.write((char*)&y, sizeof(y));                        break;                    }                }                break;            }        }    }    buff.close();    return bin;}
开发者ID:dimitarm1,项目名称:Lorris,代码行数:82,


示例6: var

void Win32MakefileGenerator::writeStandardParts(QTextStream &t){    t << "####### Compiler, tools and options" << endl << endl;    t << "CC            = " << var("QMAKE_CC") << endl;    t << "CXX           = " << var("QMAKE_CXX") << endl;    t << "DEFINES       = "      << varGlue("PRL_EXPORT_DEFINES","-D"," -D"," ")      << varGlue("DEFINES","-D"," -D","") << endl;    t << "CFLAGS        = " << var("QMAKE_CFLAGS") << " $(DEFINES)" << endl;    t << "CXXFLAGS      = " << var("QMAKE_CXXFLAGS") << " $(DEFINES)" << endl;    writeIncPart(t);    writeLibsPart(t);    t << "QMAKE         = " << var("QMAKE_QMAKE") << endl;    t << "IDC           = " << (project->isEmpty("QMAKE_IDC") ? QString("idc") :                              Option::fixPathToTargetOS(var("QMAKE_IDC"), false)) << endl;    t << "IDL           = " << (project->isEmpty("QMAKE_IDL") ? QString("midl") :                              Option::fixPathToTargetOS(var("QMAKE_IDL"), false)) << endl;    t << "ZIP           = " << var("QMAKE_ZIP") << endl;    t << "DEF_FILE      = " << varList("DEF_FILE") << endl;    t << "RES_FILE      = " << varList("RES_FILE") << endl; // Not on mingw, can't see why not though...    t << "COPY          = " << var("QMAKE_COPY") << endl;    t << "COPY_FILE     = " << var("QMAKE_COPY_FILE") << endl;    t << "COPY_DIR      = " << var("QMAKE_COPY_DIR") << endl;    t << "DEL_FILE      = " << var("QMAKE_DEL_FILE") << endl;    t << "DEL_DIR       = " << var("QMAKE_DEL_DIR") << endl;    t << "MOVE          = " << var("QMAKE_MOVE") << endl;    t << "CHK_DIR_EXISTS= " << var("QMAKE_CHK_DIR_EXISTS") << endl;    t << "MKDIR         = " << var("QMAKE_MKDIR") << endl;    t << "INSTALL_FILE    = " << var("QMAKE_INSTALL_FILE") << endl;    t << "INSTALL_PROGRAM = " << var("QMAKE_INSTALL_PROGRAM") << endl;    t << "INSTALL_DIR     = " << var("QMAKE_INSTALL_DIR") << endl;    t << endl;    t << "####### Output directory" << endl << endl;    if(!project->values("OBJECTS_DIR").isEmpty())        t << "OBJECTS_DIR   = " << var("OBJECTS_DIR").replace(QRegExp("////$"),"") << endl;    else        t << "OBJECTS_DIR   = . " << endl;    t << endl;    t << "####### Files" << endl << endl;    t << "SOURCES       = " << valList(escapeFilePaths(project->values("SOURCES")))      << " " << valList(escapeFilePaths(project->values("GENERATED_SOURCES"))) << endl;    // do this here so we can set DEST_TARGET to be the complete path to the final target if it is needed.    QString orgDestDir = var("DESTDIR");    QString destDir = Option::fixPathToTargetOS(orgDestDir, false);    if (!destDir.isEmpty() && (orgDestDir.endsWith('/') || orgDestDir.endsWith(Option::dir_sep)))        destDir += Option::dir_sep;    QString target = QString(project->first("TARGET")+project->first("TARGET_EXT"));    target.remove("/"");    project->values("DEST_TARGET").prepend(destDir + target);    writeObjectsPart(t);    writeExtraCompilerVariables(t);    writeExtraVariables(t);    t << "DIST          = " << varList("DISTFILES") << endl;    t << "QMAKE_TARGET  = " << var("QMAKE_ORIG_TARGET") << endl;    // The comment is important to maintain variable compatibility with Unix    // Makefiles, while not interpreting a trailing-slash as a linebreak    t << "DESTDIR        = " << escapeFilePath(destDir) << " #avoid trailing-slash linebreak" << endl;    t << "TARGET         = " << escapeFilePath(target) << endl;    t << "DESTDIR_TARGET = " << escapeFilePath(var("DEST_TARGET")) << endl;    t << endl;    t << "####### Implicit rules" << endl << endl;    writeImplicitRulesPart(t);    t << "####### Build rules" << endl << endl;    writeBuildRulesPart(t);    if(project->isActiveConfig("shared") && !project->values("DLLDESTDIR").isEmpty()) {        QStringList dlldirs = project->values("DLLDESTDIR");        for (QStringList::Iterator dlldir = dlldirs.begin(); dlldir != dlldirs.end(); ++dlldir) {            t << "/n/t" << "-$(COPY_FILE) /"$(DESTDIR_TARGET)/" " << Option::fixPathToTargetOS(*dlldir, false);        }    }    t << endl << endl;    writeRcFilePart(t);    writeMakeQmake(t);    QStringList dist_files = fileFixify(Option::mkfile::project_files);    if(!project->isEmpty("QMAKE_INTERNAL_INCLUDED_FILES"))        dist_files += project->values("QMAKE_INTERNAL_INCLUDED_FILES");    if(!project->isEmpty("TRANSLATIONS"))        dist_files << var("TRANSLATIONS");    if(!project->isEmpty("FORMS")) {        QStringList &forms = project->values("FORMS");        for(QStringList::Iterator formit = forms.begin(); formit != forms.end(); ++formit) {            QString ui_h = fileFixify((*formit) + Option::h_ext.first());            if(exists(ui_h))                dist_files << ui_h;        }    }//.........这里部分代码省略.........
开发者ID:husninazer,项目名称:qt,代码行数:101,


示例7: multiply_log

 /**  * Return the value of a*log(b).  *  * When both a and b are 0, the value returned is 0.  * The partial deriviative with respect to a is log(b).  * The partial deriviative with respect to b is a/b. When  * a and b are both 0, this is set to Inf.  *  * @param a First variable.  * @param b Second variable.  * @return Value of a*log(b)  */ inline var multiply_log(const var& a, const var& b) {   return var(new multiply_log_vv_vari(a.vi_, b.vi_)); }
开发者ID:alyst,项目名称:math,代码行数:15,


示例8: TEST

TEST(Variant, Casts) {  // Test Resource cast operations  {    EXPECT_FALSE(isa<DummyResource>(Variant()));    EXPECT_TRUE(isa_or_null<DummyResource>(Variant()));    EXPECT_FALSE(isa<DummyResource>(Variant(true)));    EXPECT_FALSE(isa_or_null<DummyResource>(Variant(true)));    auto dummy = req::make<DummyResource>();    Variant var(dummy);    Variant empty;    EXPECT_TRUE(isa<DummyResource>(var));    EXPECT_TRUE(isa_or_null<DummyResource>(var));    EXPECT_FALSE(isa<File>(var));    EXPECT_FALSE(isa_or_null<File>(var));    // cast tests    // Bad types and null pointers should throw.    EXPECT_EQ(cast<DummyResource>(var), dummy);    EXPECT_EQ(cast<ResourceData>(var), dummy);    try {      cast<File>(var);      EXPECT_FALSE(true);    } catch(...) {      EXPECT_TRUE(true);    }    try {      cast<c_Map>(var);      EXPECT_FALSE(true);    } catch(...) {      EXPECT_TRUE(true);    }    try {      cast<DummyResource>(empty);      EXPECT_FALSE(true);    } catch(...) {      EXPECT_TRUE(true);    }    // cast_or_null tests    // Bad types should throw, null pointers are ok.    EXPECT_EQ(cast_or_null<ResourceData>(empty), nullptr);    EXPECT_EQ(cast_or_null<ResourceData>(var), dummy);    try {      cast_or_null<File>(var);      EXPECT_FALSE(true);    } catch(...) {      EXPECT_TRUE(true);    }    try {      cast_or_null<c_Map>(var);      EXPECT_FALSE(true);    } catch(...) {      EXPECT_TRUE(true);    }    // dyn_cast tests    // Bad types are ok, null pointers should throw.    EXPECT_EQ(dyn_cast<DummyResource>(var), dummy);    EXPECT_EQ(dyn_cast<ResourceData>(var), dummy);    EXPECT_EQ(dyn_cast<File>(var), nullptr);    EXPECT_EQ(dyn_cast<c_Map>(var), nullptr);    try {      dyn_cast<DummyResource>(Variant());      EXPECT_FALSE(true);    } catch(...) {      EXPECT_TRUE(true);    }    // dyn_cast_or_null    // Bad types and null pointers are ok.  Should never throw.    EXPECT_EQ(dyn_cast_or_null<ResourceData>(empty), nullptr);    EXPECT_EQ(dyn_cast_or_null<ResourceData>(var), dummy);    EXPECT_EQ(dyn_cast_or_null<c_Map>(var), nullptr);  }  // Test Object cast operations  {    EXPECT_FALSE(isa<c_Vector>(Variant()));    EXPECT_TRUE(isa_or_null<c_Vector>(Variant()));    EXPECT_FALSE(isa<c_Vector>(Variant(true)));    EXPECT_FALSE(isa_or_null<c_Vector>(Variant(true)));    auto dummy = req::make<c_Vector>();    Variant var(dummy);    Variant empty;    EXPECT_TRUE(isa<c_Vector>(var));    EXPECT_TRUE(isa_or_null<c_Vector>(var));    EXPECT_FALSE(isa<c_Map>(var));    EXPECT_FALSE(isa_or_null<c_Map>(var));    // cast tests    // Bad types and null pointers should throw.    EXPECT_EQ(cast<c_Vector>(var), dummy);    EXPECT_EQ(cast<ObjectData>(var), dummy);    try {      cast<c_Map>(var);//.........这里部分代码省略.........
开发者ID:BruceZu,项目名称:hhvm,代码行数:101,


示例9: var

void DynamicObject::setMethod (const Identifier& name,                               var::MethodFunction methodFunction){    properties.set (name, var (methodFunction));}
开发者ID:Krewn,项目名称:LIOS,代码行数:5,


示例10: owens_t

 /**  * The Owen's T function of h and a.  *  * Used to compute the cumulative density function for the skew normal  * distribution.  *  * @param h double parameter.  * @param a var parameter.  * @return The Owen's T function.  */ inline var owens_t(double h, const var& a) {   return var(new owens_t_dv_vari(h, a.vi_)); }
开发者ID:alyst,项目名称:math,代码行数:13,


示例11: CalcBelief

void LC::CalcBelief (size_t i) {    _beliefs[i] = _pancakes[i].marginal(var(i));}
开发者ID:afbarnard,项目名称:libdai,代码行数:3,


示例12: CPatch_UncapChargeRate_Common

//.........这里部分代码省略.........			/* NOP out the MINSS instruction */			buf.SetRange(0x18, 8, 0x90);			mask.SetRange(0x18, 8, 0xff);						return true;		}	};		struct CPatch_UncapChargeRate_CTFSniperRifle : public CPatch_UncapChargeRate_Common	{		virtual const char *GetFuncName() const override { return "CTFSniperRifle::ItemPostFrame"; }		virtual uint32_t GetFuncOffMin() const override  { return 0x0000; }		virtual uint32_t GetFuncOffMax() const override  { return 0x0380; } // @ 0x026a	};		struct CPatch_UncapChargeRate_CTFSniperRifleClassic : CPatch_UncapChargeRate_Common	{		virtual const char *GetFuncName() const override { return "CTFSniperRifleClassic::ItemPostFrame"; }		virtual uint32_t GetFuncOffMin() const override  { return 0x0000; }		virtual uint32_t GetFuncOffMax() const override  { return 0x0280; } // @ 0x0146	};	#elif defined _WINDOWS		constexpr uint8_t s_Buf[] = {		0xa1, 0x00, 0x00, 0x00, 0x00,                   // +0000  mov eax,DWORD PTR [xxxxxxxx]		0xf3, 0x0f, 0x10, 0x05, 0x00, 0x00, 0x00, 0x00, // +0005  movss xmm0,DWORD PTR [xxxxxxxx]		0xf3, 0x0f, 0x10, 0x50, 0x10,                   // +000D  movss xmm2,DWORD PTR [eax+0x10]		0xd9, 0x5d, 0x00,                               // +0012  fstp [ebp-0xXX]		0xf3, 0x0f, 0x10, 0x4d, 0x00,                   // +0015  movss xmm1,[ebp-0xXX]		0xf3, 0x0f, 0x5f, 0xc8,                         // +001A  maxss xmm1,xmm0		0xf3, 0x0f, 0x10, 0x05, 0x00, 0x00, 0x00, 0x00, // +001E  movss xmm0,DWORD PTR [xxxxxxxx]		0xf3, 0x0f, 0x5d, 0xc8,                         // +0026  minss xmm1,xmm0		0xf3, 0x0f, 0x10, 0x05, 0x00, 0x00, 0x00, 0x00, // +002A  movss xmm0,DWORD PTR [xxxxxxxx]	};		struct CPatch_UncapChargeRate_Common : public CPatch	{		CPatch_UncapChargeRate_Common() : CPatch(sizeof(s_Buf)) {}				virtual bool GetVerifyInfo(ByteBuf& buf, ByteBuf& mask) const override		{			buf.CopyFrom(s_Buf);						mask.SetRange(0x00 + 1, 4, 0x00);			mask.SetRange(0x05 + 4, 4, 0x00);			mask.SetRange(0x12 + 2, 1, 0x00);			mask.SetRange(0x15 + 4, 1, 0x00);			mask.SetRange(0x1e + 4, 4, 0x00);			mask.SetRange(0x2a + 4, 4, 0x00);						return true;		}				virtual bool GetPatchInfo(ByteBuf& buf, ByteBuf& mask) const override		{			/* NOP out the MINSS instruction */			buf.SetRange(0x26, 4, 0x90);			mask.SetRange(0x26, 4, 0xff);						return true;		}	};		struct CPatch_UncapChargeRate_CTFSniperRifle : public CPatch_UncapChargeRate_Common	{		virtual const char *GetFuncName() const override { return "CTFSniperRifle::ItemPostFrame"; }		virtual uint32_t GetFuncOffMin() const override  { return 0x0000; }		virtual uint32_t GetFuncOffMax() const override  { return 0x0200; } // @ 0x16e	};		struct CPatch_UncapChargeRate_CTFSniperRifleClassic : CPatch_UncapChargeRate_Common	{		virtual const char *GetFuncName() const override { return "CTFSniperRifleClassic::ItemPostFrame"; }		virtual uint32_t GetFuncOffMin() const override  { return 0x0000; }		virtual uint32_t GetFuncOffMax() const override  { return 0x0200; } // @ 0x162	};	#endif			class CMod : public IMod	{	public:		CMod() : IMod("Sniper:Charge_Uncap")		{			this->AddPatch(new CPatch_UncapChargeRate_CTFSniperRifle());			this->AddPatch(new CPatch_UncapChargeRate_CTFSniperRifleClassic());		}	};	CMod s_Mod;			ConVar cvar_enable("sig_sniper_charge_uncap", "0", FCVAR_NOTIFY,		"Mod: remove the 200 percent upper limit on sniper rifle charge rate",		[](IConVar *pConVar, const char *pOldValue, float flOldValue) {			ConVarRef var(pConVar);			s_Mod.Toggle(var.GetBool());		});}
开发者ID:sigsegv-mvm,项目名称:sigsegv-mvm,代码行数:101,


示例13: DETOUR_DECL_MEMBER

namespace Mod_Robot_Building_Stomp{	RefCount rc_CTFBotMainAction_OnContact;	RefCount rc_CTFBotMainAction_OnStuck;		CTFBot *bot_contact = nullptr;	CTFBot *bot_stuck   = nullptr;		DETOUR_DECL_MEMBER(EventDesiredResult<CTFBot>, CTFBotMainAction_OnContact, CTFBot *actor, CBaseEntity *ent, CGameTrace *trace)	{		SCOPED_INCREMENT(rc_CTFBotMainAction_OnContact);		bot_contact = actor;		return DETOUR_MEMBER_CALL(CTFBotMainAction_OnContact)(actor, ent, trace);	}		DETOUR_DECL_MEMBER(EventDesiredResult<CTFBot>, CTFBotMainAction_OnStuck, CTFBot *actor)	{		SCOPED_INCREMENT(rc_CTFBotMainAction_OnStuck);		bot_stuck = actor;		return DETOUR_MEMBER_CALL(CTFBotMainAction_OnStuck)(actor);	}			// CTFBotMainAction::OnContact: giant bots instant stomp	// CTFBotMainAction::OnStuck:   all   bots delayed stomp			ConVar cvar_contact_nodamage("sig_robot_building_stomp_contact_nodamage", "1", FCVAR_NOTIFY,		"OnContact stomp (instant, giants only): prevent damage from being done");	ConVar cvar_contact_addknown("sig_robot_building_stomp_contact_addknown", "1", FCVAR_NOTIFY,		"OnContact stomp (instant, giants only): make robot immediately aware of building");		ConVar cvar_stuck_nodamage("sig_robot_building_stomp_stuck_nodamage", "1", FCVAR_NOTIFY,		"OnStuck stomp   (delayed, all robots):  prevent damage from being done");	ConVar cvar_stuck_addknown("sig_robot_building_stomp_stuck_addknown", "1", FCVAR_NOTIFY,		"OnStuck stomp   (delayed, all robots):  make robot immediately aware of building");			void AddKnownToBot(CTFBot *bot, CBaseEntity *ent)	{		IVision *vision = bot->GetVisionInterface();				if (vision->GetKnown(ent) == nullptr) {			vision->AddKnownEntity(ent);		}	}			DETOUR_DECL_MEMBER(int, CBaseEntity_TakeDamage, const CTakeDamageInfo& info)	{		auto ent = reinterpret_cast<CBaseEntity *>(this);				if (ent->IsBaseObject() && info.GetDamageType() == DMG_BLAST && info.GetDamageCustom() == TF_DMG_CUSTOM_NONE) {			if (rc_CTFBotMainAction_OnContact > 0 && bot_contact != nullptr && info.GetInflictor() == bot_contact && info.GetAttacker() == bot_contact) {				if (cvar_contact_addknown.GetBool()) {					AddKnownToBot(bot_contact, ent);				}								if (cvar_contact_nodamage.GetBool()) {					DevMsg("Preventing damage due to giant-robot-vs-building instant stomp from CTFBotMainAction::OnContact/n");					return 0;				}			}						if (rc_CTFBotMainAction_OnStuck > 0 && bot_stuck != nullptr && info.GetInflictor() == bot_stuck && info.GetAttacker() == bot_stuck) {				if (cvar_stuck_addknown.GetBool()) {					AddKnownToBot(bot_stuck, ent);				}								if (cvar_stuck_nodamage.GetBool()) {					DevMsg("Preventing damage due to robot-vs-building delayed stomp from CTFBotMainAction::OnStuck/n");					return 0;				}			}		}				return DETOUR_MEMBER_CALL(CBaseEntity_TakeDamage)(info);	}			class CMod : public IMod	{	public:		CMod() : IMod("Robot:Building_Stomp")		{			MOD_ADD_DETOUR_MEMBER(CTFBotMainAction_OnContact, "CTFBotMainAction::OnContact");			MOD_ADD_DETOUR_MEMBER(CTFBotMainAction_OnStuck,   "CTFBotMainAction::OnStuck");						MOD_ADD_DETOUR_MEMBER(CBaseEntity_TakeDamage, "CBaseEntity::TakeDamage");		}	};	CMod s_Mod;			ConVar cvar_enable("sig_robot_building_stomp", "0", FCVAR_NOTIFY,		"Mod: replace robots' stuck-with-building-stomp ability with something less stupid",		[](IConVar *pConVar, const char *pOldValue, float flOldValue) {			ConVarRef var(pConVar);			s_Mod.Toggle(var.GetBool());		});//.........这里部分代码省略.........
开发者ID:sigsegv-mvm,项目名称:sigsegv-mvm,代码行数:101,


示例14: log_determinant_spd

 inline var log_determinant_spd(const Eigen::Matrix<var,R,C>& m) {   stan::math::validate_square(m,"log_determinant_spd");   return var(new log_determinant_spd_vari<R,C>(m)); }
开发者ID:dougalsutherland,项目名称:pystan,代码行数:4,


示例15: if

void MingwMakefileGenerator::init(){    if(init_flag)        return;    init_flag = true;    /* this should probably not be here, but I'm using it to wrap the .t files */    if(project->first("TEMPLATE") == "app")        project->values("QMAKE_APP_FLAG").append("1");    else if(project->first("TEMPLATE") == "lib")        project->values("QMAKE_LIB_FLAG").append("1");    else if(project->first("TEMPLATE") == "subdirs") {        MakefileGenerator::init();        if(project->isEmpty("QMAKE_COPY_FILE"))            project->values("QMAKE_COPY_FILE").append("$(COPY)");        if(project->isEmpty("QMAKE_COPY_DIR"))            project->values("QMAKE_COPY_DIR").append("xcopy /s /q /y /i");        if(project->isEmpty("QMAKE_INSTALL_FILE"))            project->values("QMAKE_INSTALL_FILE").append("$(COPY_FILE)");        if(project->isEmpty("QMAKE_INSTALL_PROGRAM"))            project->values("QMAKE_INSTALL_PROGRAM").append("$(COPY_FILE)");        if(project->isEmpty("QMAKE_INSTALL_DIR"))            project->values("QMAKE_INSTALL_DIR").append("$(COPY_DIR)");        if(project->values("MAKEFILE").isEmpty())            project->values("MAKEFILE").append("Makefile");        return;    }    project->values("TARGET_PRL").append(project->first("TARGET"));    processVars();    if (!project->values("RES_FILE").isEmpty()) {        project->values("QMAKE_LIBS") += escapeFilePaths(project->values("RES_FILE"));    }    // LIBS defined in Profile comes first for gcc    project->values("QMAKE_LIBS") += escapeFilePaths(project->values("LIBS"));    project->values("QMAKE_LIBS_PRIVATE") += escapeFilePaths(project->values("LIBS_PRIVATE"));    QString targetfilename = project->values("TARGET").first();    QStringList &configs = project->values("CONFIG");    if(project->isActiveConfig("qt_dll"))        if(configs.indexOf("qt") == -1)            configs.append("qt");    if(project->isActiveConfig("dll") && project->values("QMAKE_SYMBIAN_SHLIB").isEmpty()) {        QString destDir = "";        if(!project->first("DESTDIR").isEmpty())            destDir = Option::fixPathToTargetOS(project->first("DESTDIR") + Option::dir_sep, false, false);        project->values("MINGW_IMPORT_LIB").prepend(destDir + "lib" + project->first("TARGET")                                                         + project->first("TARGET_VERSION_EXT") + ".a");	project->values("QMAKE_LFLAGS").append(QString("-Wl,--out-implib,") + project->first("MINGW_IMPORT_LIB"));    }    if(!project->values("DEF_FILE").isEmpty() && project->values("QMAKE_SYMBIAN_SHLIB").isEmpty())        project->values("QMAKE_LFLAGS").append(QString("-Wl,") + project->first("DEF_FILE"));    MakefileGenerator::init();    // precomp    if (!project->first("PRECOMPILED_HEADER").isEmpty()        && project->isActiveConfig("precompile_header")) {        QString preCompHeader = var("PRECOMPILED_DIR")		         + QFileInfo(project->first("PRECOMPILED_HEADER")).fileName();	preCompHeaderOut = preCompHeader + ".gch";	project->values("QMAKE_CLEAN").append(preCompHeaderOut + Option::dir_sep + "c");	project->values("QMAKE_CLEAN").append(preCompHeaderOut + Option::dir_sep + "c++");	project->values("QMAKE_RUN_CC").clear();	project->values("QMAKE_RUN_CC").append("$(CC) -c -include " + preCompHeader +                                                    " $(CFLAGS) $(INCPATH) -o $obj $src");        project->values("QMAKE_RUN_CC_IMP").clear();	project->values("QMAKE_RUN_CC_IMP").append("$(CC)  -c -include " + preCompHeader +                                                        " $(CFLAGS) $(INCPATH) -o [email
C++ var_AddCallback函数代码示例
C++ value_type函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。