草庐IT

build_exe_options

全部标签

C++ 设计 : functions with boolean options

我有一个关于C++中“良好设计实践”的问题。我正在用C++11编写一个数字库,我使用了很多元编程和基于模板的技术。但我有一个非常基本的问题:考虑一个函数,它可以有两个非常接近的行为,除了一个可以由boolean标志激活的选项。我只考虑一个可以由开发人员设置/取消设置的标志,而不是一个可以在运行时设置/取消设置的标志。设计有3种可能性:1)编写两个在名称中带有显式选项的函数:myFunctionFlag1(...);myFunctionFlag2(...);2)使用模板参数:templatemyFunction(...);3)使用可变参数:myFunction(...,constbool

c++ - boost::optional 的比较 (<)、输出 (<<) 和赋值 (=)

我有几个关于如何boost::optional的问题作品。让我们首先这样做:boost::optionali;是i总是等于*i(和其他关系运算符类似)?条件是否正确i和*i未定义?(i仍未设置任何值)什么是std::cout应该打印吗?我很确定i=3始终与*i=3相同.如果是这样,我应该更喜欢哪个? 最佳答案 没有。如果i未初始化,第一个将返回true,而第二个将断言。没有。operator的文档清楚地表明,如果左侧参数未初始化,它将返回true设置右手操作数时。没有operator对于optional所以我假设它会返回unspec

c++ - 如何脱离 std::experimental::optional?

使用Boost,我可以创建一个可选的就地:boost::optionalwork=boost::in_place(boost::ref(io_service));并通过以下方式解除它:work=boost::none;有了C++14/实验性支持,我可以改为构建一个可选的就地:std::experimental::optionalwork;work.emplace(boost::asio::io_service::work(io_service));但我不知道如何解除它... 最佳答案 work=std::experimental::

c++ - Qt 应用程序 : build with different Qt versions 的 CI

我使用Travis-CI为我的简单Qt应用程序进行持续集成。我的.travis.yml文件看起来像这样(基于thisgist):language:cppbefore_install:-sudoadd-apt-repository--yesppa:ubuntu-sdk-team/ppa-sudoapt-getupdate-qq-sudoapt-getinstall-qqg++qt4-qmakelibqt4-devqt5-qmakeqtbase5-devscript:-qmake-qt=qt4-v-qmake-qt=qt4-make-make-kcheck-makeclean-qmake-

c++ - cc1.exe 系统错误 - 缺少 libwinpthread-1.dll - 但它不是

我最近从Sourceforge下载了MinGW-w64到我的外部硬盘驱动器上,所有文件都位于:E:\mingw-w64\x86_64-4.9.2-posix-seh-rt_v3-rev1\mingw64\bin当我尝试在Windows8.1上使用gcc编译我的第一个“HelloWorld”程序时,我收到cc1.exe系统错误,它告诉我Theprogramcan'tstartbecauselibwinpthread-1.dllismissing.Tryreinstallingtheprogramtofixtheproblem.然而,libwinpthread-1.dll(它的全部54,7

c++ - 显式初始化 std::optional 时,我应该使用 nullopt 吗?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭6年前。Improvethisquestion安std::optional可以像这样初始化为脱离状态:std::optionaloi{nullopt};但也像这样:std::optionaloi{};赋值也是如此(oi={}或oi=nullopt)。除了个人喜好/美感之外,这两者之间是否存在差异,使我更喜欢其中之一?还是根本不重要?注意:我问的是我想显式初始化可选的情况,而不是默认初始化它(例如为了强调)。

命令“ python setup.py egg_info”失败,错误代码1 in/tmp/pip-build-build-fkyx6m64/misaka/

我在Fedora25上使用Django1.11。我正在使用虚拟环境,并且在尝试安装misaka:pip安装misaka时我收到以下错误:命令“pythonsetup.pyegg_info”失败,错误代码1在/tmp/pip-build-build-fkyx6m64/misaka/这是追溯:Collectingdjango-misakaDownloadingdjango-misaka-0.2.1.tar.gzCollectinghoudini.py(fromdjango-misaka)Downloadinghoudini.py-0.1.0.tar.gzCollectingmisaka(fromd

c++ - 如何使cmake输出到 "build"目录?

我正在使用cmake编译一个C++项目,我希望cmake在build中生成所有输出文件(元文件,如Makefile用于创建二进制文件)文件夹。我已经检查了HowdoImakecmakeoutputintoa'bin'dir?中的所有答案,他们都没有为我工作(令人惊讶!)。文件是在根文件夹中生成的,而不是在build文件夹中,这里有什么问题?我想我一定错过了什么。代码结构➜cmake-testtree..├──CMakeLists.txt└──hello.cpp0directories,2filesCMakeLists.txt#SpecifytheminimumversionforCMa

c++ - 错误 MSB6006 : "cmd.exe" exited with code

我正在为我的USB设备构建驱动程序。使用msvisualstudio10构建时出现以下两个错误:C:\ProgramFiles\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(151,5):errorMSB6006:"cmd.exe"exitedwithcode和C:/boost32/include/boost-1_48\boost/numeric/conversion/detail/preprocessed/numeric_cast_traits.hpp(34):errorC2766:explicitspecializat

c++ - 什么 VS2010 C 项目设置导致 exes 需要兼容模式

我已经在我的Windows764位机器上运行和编译了几个月的程序,但最近我不得不更改它使用的静态库的几个VC项目设置,现在生成的可执行文件需要我在“WindowsXP兼容模式”下运行它。在装有VisualStudio2010SP1的Windows764位机器上编译我正在生成的程序是在Win32Debug模式下构建的。静态库项目指定目标机器/X86。当我从调试器运行程序时,它会启动并运行,但是如果通过Windows图标运行,它需要XP兼容模式。当尝试在调试器之外启动时,EXE会在任务管理器中显示一秒钟然后消失。我已尝试在其上使用MicrosoftApplicationVerifier,但