草庐IT

libboost_filesystem-vc

全部标签

c++ - __attribute__((destructor)) 在 VC 中等效?

我看过__attribute__((constructor))equivalentinVC?和CRTInitialization,这对特定于gcc的__attribute__((constructor))都有帮助。但是__attribute__((destructor))呢?是否有等效的VC? 最佳答案 如果你正在制作一个动态链接库,你可以制作你的DllMainentrypoint处理这个:BOOLWINAPIDllMain(HINSTANCEhinstDLL,DWORDfdwReason,LPVOIDlpvReserved){if

c++ - 我应该从 Boost::filesystem::copy 得到什么错误代码

我正在尝试使用带有system::error_code参数的boost::filesystem::copy_file将文件复制到目标位置,因为我不想抛出异常。如果同名文件已经存在,该函数接受一个参数是否应该失败,这是我想要的行为。来自http://www.boost.org/doc/libs/1_46_1/libs/filesystem/v3/doc/reference.html#copy_file:Effects:Ifoption==copy_option::fail_if_exists&&exists(to),anerrorisreported.但是,我找不到我应该期待的错误代码。

c++ - VC++ 2013 : using-declaration + redefinition of member function leads to compile error

我想通过指定策略允许修改我的类的行为。该策略应该用作boost::variant的访问者。有适合大多数情况的默认策略,但用户可能需要添加或替换一些重载。我发现vc++2013没有编译此代码并出现错误C3066:Therearemultiplewaysthatanobjectofthistypeofcanbecalledwiththesearguments。相同的代码在gcc和clang中按预期编译和工作。是vc++2013的错误吗?#includestructDefaultPolicy{voidoperator()(bool){std::coutUPD这个例子适用于vc++2010。看

c++ - 如何在其他计算机上部署用visual studio编写的简单boost程序

我用C++编写了一个简单的程序,它使用boost文件系统库来组织一些文件。我正在使用适用于Windows桌面IDE的VisualStudio2013Express。我希望我的程序可以在没有安装程序或其他任何东西的情况下在其他计算机上运行。用户应该能够下载程序并单击它。我在Release模式下构建了我的程序,它可以在我的计算机上运行。当我尝试在另一台计算机上部署时,我得到的错误是缺少MSVCP120.dll。为了解决这个问题,我右键单击我的项目,单击属性,然后单击配置属性>C/C++>代码生成,并将运行时库从多线程DLL(/MD)更改为多线程(/MT)。现在由于这个构建错误,我的程序将无

c++ - 我如何确定拥有多个 VC++ CRT 状态是否对我的应用程序有问题?

ThisMSDNarticle说如果我的应用程序多次加载VC++运行时,因为它或它所依赖的某些DLL静态链接到VC++运行时,那么应用程序将有多个CRT状态,这可能会导致未定义的行为。p>我该如何确定这对我来说是否是个问题?例如inthisMSDNarticle提供了几个示例,基本上说明由C++运行时维护的对象(例如文件句柄)不应跨DLL边界传递。如果我希望我的项目静态链接到VC++运行时,需要检查的事项列表到底是什么? 最佳答案 只要您不做某些事情,拥有多个CRT拷贝是可以的...:CRT的每个拷贝都将管理自己的堆。如果您在模块A

服务器异常断电导致文件损坏,clickhouse启动报错:filesystem error Structure needs cleaning

文章目录ClickHouse介绍问题介绍解决办法ClickHouse介绍ClickHouse是由俄罗斯的Yandex公司开发的一款快速、可扩展的列式数据库管理系统。它专门针对OLAP场景设计,在海量数据分析和查询方面具有出色的性能表现,同时还能支持实时数据插入和更新。ClickHouse采用了面向列的存储方式,具有较高的压缩比和查询速度。它支持SQL语言,并提供了一系列丰富的函数库,可满足各种复杂的数据分析需求。同时,ClickHouse还支持数据分区和分片,可实现横向扩展ClickHouse可在Linux和Windows等操作系统上运行。它还支持RESTfulAPI和JDBC等多种接口,方便

c++ - 尝试在 VC++ 中使用静态类函数编译 DLL 时出错

我正在尝试使用我在独立应用程序中制作和测试过的一些功能。现在我正在尝试创建一个DLL,我收到一些错误,指出该函数已被重新定义并且返回参数不匹配。这似乎是我唯一一次遇到这些错误,我已经通过删除此类对其进行了测试,它编译得很好,独立应用程序的main.cpp直接引用了这些错误。以下是错误以及h和cpp文件:Error7errorC2371:'Parser::parse':redefinition;differentbasictypesc:\users\seb\documents\visualstudio2005\projects\TestDLL\TestDLL\parser.cpp17Er

c++ - 如何使用 boost::filesystem 检查文件是常规文件还是符号链接(symbolic link)?

我想检查字符串name是否指向我可以打开和读取的文件,因此它可以是常规文件或符号链接(symboliclink)。我第一次用这个:std::ifstreamin(name.c_str());if(!in.is_open()){//throwexception!}但是当name引用目录名称时它没有抛出异常。现在我正在使用这个:if(!fs::exists(name)||fs::is_directory(name)){//throwexception!}但如果它是目录的符号链接(symboliclink),它(大概)不会抛出异常。这也是同样的道理:if(!fs::is_regular_fi

c++ - 如何在 VC++ 中重新启动我自己的应用程序

我正在开发VC++应用程序。弄清楚如何重新启动我自己的应用程序谁能举个例子 最佳答案 编写一个程序,它将:等待您的应用程序终止再次运行它。调用此程序,然后退出您的应用程序。该解决方案应用相当广泛。另一种选择:使用特定参数调用您的应用程序(例如/restarted)。新实例应等待旧实例终止,然后再执行任何任务。然后关闭旧实例。 关于c++-如何在VC++中重新启动我自己的应用程序,我们在StackOverflow上找到一个类似的问题: https://stack

c++ - vc++ 中未处理的异常 - HRESULT 失败

我知道VC++6.0是很古老的语言,但我别无选择,我只是在维护一个现有的程序,我遇到了这个错误UnhandledexceptioninAssess.exe(KERNELBASE.DLL):0xE06D7363:MicrosoftC++Exception这是我的代码HRESULThr=CoInitialize(NULL);//Createtheinterfacepointer.IModulePtrpI(__uuidof(RPTAModuleInterface));//theerrorishere调试并使用f11后,程序转到COMIP.H,这是代码explicit_com_ptr_t(co