草庐IT

Type_system

全部标签

c++ - 无法在 VS 14 CTP : conditional expression of type 'void' is illegal 中使用 auto 声明 lambda

使用VisualStudio2014CTP、C++(v140)编译器:autogp=[&](BYTE*buff){autogp1=[](char*bff,char**p1){*p1=strstr((char*)bff,"(");return(*p1);};};错误:conditionalexpressionoftype'void'isillegal(也许auto真的输入错误?)如果我将内部lambda声明为std::functiongp1然后就可以了是我做错了什么还是编译器错误? 最佳答案 我没有运行2014,但您可能需要指定内部l

c++ - 使用前向声明时如何修复 "field has incomplete type"错误

如注释中所述,此代码抛出编译器错误error:field‘fTarget’hasincompletetype。为什么会这样?我只是分配那个字段而不做任何需要知道里面是什么的操作......或者我是?也许它无法弄清楚复制构造函数?classFSRVertex;//fwdclassFSREdge{public:charfC;FSRVertexfTarget;//compilererrorFSREdge(charc,FSRVertextarget):fC(c),fTarget(target){}//compilererror};classFSRVertex{public:boost::uno

c++ - 使用管理员权限运行 System( ) CMD 命令

我正试图找到一种在我的C++代码中以管理员身份运行CMD命令的方法。即:system("taskkill/immygame.exe");这将不起作用,它会弹出“错误:访问被拒绝”消息。如果我以管理员身份运行WindowsCMD并直接执行相同的命令,它将完美运行。那么在C++中自动使用CMD作为管理员的方法是什么?我在这里阅读了一些其他主题,但我无法直接关联/从中获得任何内容。非常感谢示例。 最佳答案 正确的答案是通过使用requireAdministrator显示的辅助EXE启动。你的助手程序是这样的:#includeintmain

c++ - boost 异步读/写失败, "Insufficient system resources exist to complete the requested service"

我(貌似)随机收到错误:"Insufficientsystemresourcesexisttocompletetherequestedservice"当使用boost::asio::async_read_until或boost::asio::async_write串口时。将串行端口声明为:boost::asio::serial_portmSerialPort;在这个错误之后,我尝试try{mSerialPort.cancel();mSerialPort.close();}catch(boost::system::system_errorerror){;}其中一个(尚不确定是哪个)挂起并

c++ - 错误 C2893 : Failed to specialize function template 'unknown-type std::invoke(_Callable &&,_Types &&...) noexcept(<expr>)'

下面是一个给出编译时错误的程序。这主要与D类中的Boo函数有关。我最终尝试使用多个线程来调用solve方法,但目前这对我来说似乎不太有效,无法做到这一点。错误是:1>d:\dummy\project1\trash.cpp(37):warningC4101:'d':unreferencedlocalvariable1>c:\programfiles(x86)\microsoftvisualstudio\2017\community1\vc\tools\msvc\14.11.25503\include\thr\xthread(240):errorC2672:'std::invoke':no

c++ - std::vector 应该尊重 alignof(value_type) 吗?

如果我定义一个具有特定对齐要求的简单类型,该类型的std::vector难道不应该为每个元素遵守对齐吗?考虑下面的例子typedefstd::arrayalignas(32)avx_point;std::vectorx(10);assert(!(std::ptrdiff_t(&(x[0]))&31)&&//assertthatx[0]is32-bytealigned!(std::ptrdiff_t(&(x[1]))&31));//assertthatx[1]is32-bytealigned我发现clang3.2(带或不带-stdlib=libc++)悄悄地(没有任何警告)违反了对齐要求

c++ - ILINK32 错误 : Unresolved external '__fastcall System::TObject::NewInstance(System::TMetaClass *)' referenced from XXX. obj 的原因?

我从C++Builder2009的链接器中收到以下错误Unresolvedexternal'__fastcallSystem::TObject::NewInstance(System::TMetaClass*)'referencedfromXXX.obj?我们有一组Delphi文件(.pas)和一组C++Builder文件(.hpp和.obj),其中是从这些.pas文件生成的。一组文件被复制到另一台机器上。两台机器都安装了完全相同的C++Builder2009版本和相同的更新(最新:3+4)。当我在另一台机器上的C++Builder中创建一个空的VCL应用程序并将此集合中的一个obj文

c++ - 设计 L-System 数据结构 (C++)

我正在尝试为C++中的L-System重写引擎的实现设计数据结构,但我似乎无处可去:(。我需要存储一串符号(字符)。有几种类型的符号(由LSystem的字母表指定)。假设我们有类型“A”、“B”、“C”。现在每种交易品种都可以有不同的参数。例如,类型A的符号将有一些距离,而符号B有一个角度。C符号没有参数。然后该字符串可能看起来像“ABABC”。然后我需要遍历字符串并执行一些也与每种类型的符号相关的操作。“A”表示“画‘距离’长度的线”(距离是A的参数),B表示“转‘角’度”,C表示画完。我试图为每个符号类型(类SymbolA、类SymbolB、类SymbolC)创建类Symbol和一

system.outofmemoryexception在发送带有附件的大量消息时使用mailkit

我正在发送带有MailKit的大型附件(20MB-50MB)的大量消息。当我的应用程序工作时间很长时间(〜4H)并发送这些消息时,RAM的使用正在增长,并且在某个方面的程序意外关闭而没有任何错误消息。一些用户从他的日志中给我发送了信息(有趣的是,为什么他的计算机程序没有关闭?):System.OutOfMemoryException:ZgłoszonoWyjątekTypu'System.outofmemoryException'。wMimeKit.IO.MemoryBlockStream.Write(Byte[]buffer,Int32offset,Int32count)wMimeKit.A

c++ - 振奋 spirit : What type names should be used for the built in terminals?

我正在重构一个类型系统(类型模型),它使用spirit进行字符串序列化。我正在使用类型特征的编译时建模构造。templatetype_traits{typedefboost::spirit::qi::int_parserstring_parser;}templatetype_traits{typedefboost::spirit::ascii::stringstring_parser;}在这个例子中,我展示了原始解析器,但我希望也加入规则。int4类型有效,但这是因为(home/qi/numeric/int.hpp+27):namespacetag{templatestructint_