草庐IT

cpp-driver

全部标签

c++ - 是否可以在 header 中声明 constexpr 类并将其定义在单独的 .cpp 文件中?

我有一个类Dimension我在Dimension.h文件中定义(就像我的所有类一样):classDimension{public:constexprDimension()noexcept;constexprDimension(intw,inth)noexcept;intwidth;intheight;};我认为我可以像在我所有的类(class)中一样,将定义放在单独的Dimension.cpp中:#include"Dimension.h"constexprDimension::Dimension()noexcept:width(0),height(0){}constexprDimen

c++ - 是否应在头文件或 .cpp 源文件中指定 C++ 函数默认参数值?

我对C++有点陌生。我在设置标题时遇到问题。这是来自函数.hexternvoidapply_surface(int,int,SDL_Surface*,SDL_Surface*,SDL_Rect*);这是来自functions.cpp的函数定义voidapply_surface(intx,inty,SDL_Surface*source,SDL_Surface*destination,SDL_Rect*clip=NULL){...}这就是我在main.cpp中使用它的方式#include"functions.h"intmain(intargc,char*argv[]){apply_surf

c++ - 包括 .cpp 文件

我在here之类的地方阅读过您必须包含.h文件而不是.cpp文件,否则会出现错误。比如main.cpp#include#include"foop.h"intmain(intargc,char*argv[]){intx=42;std::coutfoop.h#ifndefFOOP_H#defineFOOP_Hintfoo(inta);#endiffoop.cppintfoo(inta){return++a;}有效,但如果我将#include"foop.h"替换为#include"foop.cpp"会出现错误(使用DevC++4.9.9.2,window):multipledefinitio

c++ - 未在 Windows 8.1 上构建的 Node 包 - 缺少 Microsoft.Cpp.Default.props

NPM包未在Windows8.1上构建-失败并出现以下错误,errorMSB4019:Theimportedproject"C:\Microsoft.Cpp.Default.props"wasnotfound.Confirmthatthepathinthedeclarationiscorrect,andthatthefileexistsondisk.我已经尝试了以下,设置环境变量VCTargetsPath至C:\ProgramFiles(x86)\MSBuild\12.0\(错误会相应改变,但没有Microsoft.Cpp.Default.props与2012构建工具)。根据thisa

c++ - .cpp 文件和 .h 文件有什么区别?

因为我已经制作了.cpp文件,然后转成.h文件,我能发现的唯一区别就是你不能#包含.cpp文件。我缺少什么区别吗? 最佳答案 C++构建系统(编译器)没有区别,所以都是一种约定。约定是.h文件是声明,.cpp文件是定义。这就是为什么.h文件是#included--我们包含声明。 关于c++-.cpp文件和.h文件有什么区别?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8754

c++ - cpp.react 库的 C++ 源代码中出现奇怪的 "->* []"表达式

这是我在cpp.reactlibrary的文档中找到的C++片段。:autoin=D::MakeVar(0);autoop1=in->*[](intin){intresult=in/*Costlyoperation#1*/;returnresult;};我从未见过->*[]符号。一开始我还以为是打错了,但是在sourcecode中也发现了这样的表达方式:autovolume=(width,height,depth)->*[](intw,inth,intd){returnw*h*d;};这是有效的C++11(或C++14)吗?什么意思? 最佳答案

c++ - 如何通过 cpp 项目文件夹调用 clang-format?

有没有办法为整个cpp项目文件夹调用类似clang-format--style=Webkit的东西,而不是为每个文件单独运行它?我正在使用clang-format.py和vim来执行此操作,但我认为有一种方法可以应用一次。 最佳答案 不幸的是,没有办法递归地应用clang格式。*.cpp只会匹配当前目录中的文件,不匹配子目录。连**/*都不行。幸运的是,有一个解决方案:使用find命令获取所有文件名并将它们通过管道输入。例如,如果要格式化所有.h和递归foo/bar/目录下的.cpp文件,可以这样做findfoo/bar/-inam

java - 如何使用 mongodb-java-driver 进行 upsert

如何使用java-driver将数据插入到mongodb集合中?我尝试(使用空集合):db.getCollection(collection).update(newBasicDBObject("_id","12"),dbobject,true,false);但文档是使用_id==ObjectID(...)创建的。不是“12”值。此代码(js)按预期添加带有_id="12"的文档db.metaclass.update({_id:12},{$set:{b:1}},{upsert:true})mongo-java-driver-2.11.2 最佳答案

java - 如何使用 mongodb-java-driver 进行 upsert

如何使用java-driver将数据插入到mongodb集合中?我尝试(使用空集合):db.getCollection(collection).update(newBasicDBObject("_id","12"),dbobject,true,false);但文档是使用_id==ObjectID(...)创建的。不是“12”值。此代码(js)按预期添加带有_id="12"的文档db.metaclass.update({_id:12},{$set:{b:1}},{upsert:true})mongo-java-driver-2.11.2 最佳答案

mysql - golang sql driver的prepare语句

关于golang的sqldriver,下面这两个语句有什么区别?//store.DBis*sql.DBtyperows,err:=store.DB.Query(SQL,args...)//err!=nildeferrows.Close()和//store.DBis*sql.DBtypestmt,err:=store.DB.Prepare(SQL)//err!=nildeferstmt.Close()rows,err:=stmt.Query(args...)//err!=nildeferrows.Close()好像他们是一样的?有什么细微的差别吗?更新:我们不需要执行很多stmt.Exe