草庐IT

OPTIONS_PROVIDER_CLASS_NAME

全部标签

c++ - (SWIG C++ 到 Python)警告 301 : class keyword used, 但不是在 C++ 模式下

我正在尝试为python编译C++扩展。我创建了一个接口(interface)文件foo.i,如下所示:%modulefoo%include"typemaps.i"//Forpointerstoprimitivetypes%include"std_string.i"//std::stringmapping%applyconststd::string&{std::string*foo};//datatypescontainingstd::stringmembers%{#defineSWIG_FILE_WITH_INIT#include"../path/to/c++/header/file

c++ - 使用 boost::program_options 解析配置文件

你好,我写了一个类来通过boost::program_options解析配置文件。这是我的(缩短):namespacensProOp=boost::program_options;nsProOp::variables_mapm_variableMap;nsProOp::options_descriptionm_description;//ToaddoptionstothevariableMap,e.g."addOption("money_amount");"templatevoidaddOption(conststd::string&option,conststd::string&he

c++ - C++ 模板是否能够从父类获取 "forward any class function"?

classFoo{public:voidmethodA();};classManagedFoo{FoofooInst;public:voidmethodA(){doSomething();fooInst.methodA();}};现在我想把ManagedFoo做成一个模板,管理任何类而不仅仅是Foo,并且在调用Foo的任何函数之前,先调用doSomething。templateclassManager{_TyManaged_managedInst;voiddoSomething();public:/*Forwardeveryfunctioncalledby_managedInst*//

c++ - (C++14) lambda 数组 : error: 'name' declared as array of 'auto'

我很难解决这个错误。我承认,我是C++的新手,我的困难来自于不理解错误消息。代码如下:autoselectionFuncs[8]={[&](constVector3&min,constVector3&max){returnmax.x_==seamValues.x_||max.y_==seamValues.y_||max.z_==seamValues.z_;},[&](constVector3&min,constVector3&max){returnmin.x_==seamValues.x_;},[&](constVector3&min,constVector3&max){returnm

c++ - 关于 C++ 中 sizeof(class) 用法抛出的错误

当我用C++编译我的项目时,MSVC抛出以下错误:error#94:thesizeofanarraymustbegreaterthanzero执行sizeof时在以下行中抛出错误:if(sizeof(MyNamespace::MyClass)==60)MyClass是这样定义的:classMyClass:publicParentClass{public:MyClass(void*pCreate,inta,intb,boolc):ParentClass(pCreate,a,b,c){}virtualinlinevoidmyFunc(){//something}private:virtua

c++ - c++11 中的 typeid(T).name() 替代方案?

在c++11中是否有一种标准的方法来使用一些模板黑魔法或动态地使用一些标准库函数来获取类的名称? 最佳答案 不,但你可以做一个:templatestructmeta{staticconststd::string&get_name(){returnT::class_name;}};然后将静态成员class_name添加到类中:classMyClass{public:staticconststd::stringclass_name("MyClass");};或专门化元:templatestructmeta{staticconststd:

c++ - "Expected class-name"...析构函数实现中的问题

我正在尝试实现堆栈和队列。我还获得了用于测试堆栈和队列的代码(以查看它们各自的功能是否正常工作)。我已经实现了stack和quete的功能,但是在尝试编译它们时出现错误:在析构函数“Stack::~Stack()”中'('标记前的预期类名在他们两个。以下是通用的Stack类:templateclassStack{Listlist;public:Stack();Stack(constStack&otherStack);~Stack();}列表类:templateclassList{ListItem*head;public:List();List(constList&otherList);

c++ - 错误 : expected primary-expression before ‘>’ : templated function that try to uses a template method of the class for which is templated

这个问题在这里已经有了答案:WhereandwhydoIhavetoputthe"template"and"typename"keywords?(8个答案)关闭8年前。在使用模板和仿函数(未出现在这个问题中)时,我最终遇到了以下简化的问题。以下代码(也可用here)classA{public:templateboolisGood(intin)const{constTf;returninbooltryEvaluator(T&evaluator,intvalue){returnevaluator.isGood(value);}intmain(intargc,constchar*argv[]

c++ - "class ClassName;"放在其他类定义的头文件中是什么意思?

我对这行代码classTreeItem;有点困惑。classTreeItem;在本文件中未包含的其他文件中定义。我必须在一本书中查找这个问题,但我确信这个问题的答案非常简单。#ifndefTREEMODEL_H#defineTREEMODEL_H#include#include#includeclassTreeItem;//here,whatdoesthisdo??//![0]classTreeModel:publicQAbstractItemModel{...public:...private:...};//![2]#endif//TREEMODEL_H

从[parendid,name]目录dict到完整的路径dict

我有一个目录的命令[parentid,name]像这样:D={0:[-1,'C:'],1:[0,'BLAH'],2:[0,'TEMP'],3:[1,'BOOO'],4:[1,'AZAZ'],5:[2,'ABCD']}我想从这途径到完整的道路:FULLPATHS={}forkey,pathinD.iteritems():newpath=path[1]ifpath[0]!=-1:newpath=FULLPATHS[path[0]]+'\\'+newpathFULLPATHS[key]=newpath有用:{0:'C:',1:'C:\\BLAH',2:'C:\\TEMP',3:'C:\\BLAH\\