草庐IT

KERN_PROTECTION_FAILURE

全部标签

c++ - Boost 序列化给出未定义的类型 'boost::STATIC_ASSERTION_FAILURE'

我正在学习使用boost将我的一些C++类序列化。我在接口(interface)中有一个结构。我使用boostserilaize函数像这样序列化这个结构。接口(interface).hstructX{constLongrate;}templatevoidserialize(Archive&ar,uint32version){ar&this->rate;}BOOST_CLASS_EXPORT(X);现在这个头文件将被我的主类使用。比方说main.cpp,这个主类的标题有主要.h#include"Interface.h"classMain{//somestufftemplatevoidse

从命令行运行程序时出现 C++ 错误 "failure: locale::facet::_S_create_c_locale name not valid"

我似乎对C++中的区域设置有疑问。当我从Eclipse中运行我的程序时,一切正常。但是,当我尝试从命令行运行时,我不断收到此错误:失败:locale::facet::_S_create_c_locale名称无效这是触发错误的代码://SetupUTF8filestreamstringfileName="./sz.txt";wifstreaminFileStream;try{setlocale(LC_ALL,"");inFileStream.open(fileName.c_str());inFileStream.imbue(locale(""));if(!inFileStream){re

鸿蒙真机运行项目报错Failure[INSTALL_FAILED_NO_BUNDLE_SIGNATURE]

错误详情解决方案(给项目加签名)方案一:自动签名使用自动签名前,请确保本地系统时间与北京时间(UTC/GMT+8.00)保持一致。如果不一致,将导致签名失败。1、确保DevEcoStudio与真机设备已连接,真机连接成功后如下图所示:2、打开ProjectStructure3、选中Project>>SigningConfigs>>SignIn 登录自己或者公司的华为的开发者账号(ps:如果是公司开发者建议用公司的开发者账号)4、登录成功返回DevEcoStudio开发工具就会自动加签,点击OK完成5、重新运行项目,真机运行成功,HelloWorld方案二:手动签名

c++ - 谷歌模拟 : How to configure custom message to explain match failure

如果匹配失败,Googlemock会打印如下消息:test.cpp:112:EXPECT_CALL(mock_obj,foo(MyMatcher(bar)))...Expectedarg#0:isequalto[1,2;3,4]Actual:{1}Expected:tobecalledonceActual:nevercalled-unsatisfiedandactive使用自定义匹配器MyMatcher我可以定义一个描述字符串,用于在匹配失败时生成失败消息。但它只定义了消息的Expectedarg#0部分。有什么方法可以自定义Actual的打印方式吗?在我的例子中,我不能为bar的类重

c++ - 为什么我会收到 CL_MEM_OBJECT_ALLOCATION_FAILURE?

我在GPU上分配一个cl_mem缓冲区并对其进行处理,在超过一定尺寸之前效果很好。在那种情况下,分配本身会成功,但执行或复制不会。我确实想使用设备的内存来加快操作速度,所以我分配如下:buf=clCreateBuffer(cxGPUContext,CL_MEM_WRITE_ONLY,buf_size,NULL,&ciErrNum);现在我不明白的是大小限制。我正在复制大约16MB,但应该可以使用大约128MB(参见CL_DEVICE_MAX_MEM_ALLOC_SIZE)。为什么这些数字相差如此之大?这是oclDeviceQuery的一些摘录:CL_PLATFORM_NAME:NVID

c++ - 模板元编程 :why flat type is failure

我想将树型展平为平面型。示例:typedefstd::tuple,int>tup;Flat::type=>std::tuple我使用:templatestructFlat{usingtype=T;};templateclassC,typename...ARGS>structFlat>{usingtype=C;};templateclassC,typename...ARGS0,typename...ARGS1,typename...ARGS2>structFlat,ARGS2...>>:Flat>{};voidtest(){typedefstd::tuple,int>tup;static

c++ - istream 提取运算符 : how to detect parse failure?

如何检测istream提取是否像这样失败?strings("x");stringstreamss(s);inti;ss>>std::ios::hex>>i;编辑——虽然问题标题涵盖了这一点,但我忘了在正文中提到:我真的想检测失败是由于格式不正确造成的,即解析,还是由于任何其他与IO相关的问题,以便提供适当的反馈(一个malformed_exception("x")或其他)。 最佳答案 if(!(ss>>std::ios::hex>>i)){std::cerr就这么简单。预计到达时间:这是一个示例,说明此测试如何与流的末尾交互。int

c++ - JNI_CreateJavaVM : Buffer overrun if I throw an exception in case of failure

在C++项目中,我使用JNI调用API来启动JVM。我已经围绕JVM做了一些包装,因此我可以以面向对象的方式使用所有需要的部分。到目前为止效果很好。现在,如果JVM没有启动(JNI_CreateJavaVM返回值JNI_CreateJavaVM之后抛出异常,我遇到缓冲区溢出。如果我在没有JNI_CreateJavaVM调用的情况下引发异常,它会按预期工作。有人知道这里的问题是什么吗?或者如何调试?环境:Windows、VisualStudio2008JDK:jrockit27.6jdk16005,但也发生在SUNstockone上干杯多米尼克 最佳答案

c++ - Qt : After installation of VS2012 LNK1123 failure during conversion to COFF

之后我安装了VS2012我的Qt项目不再编译(我的电脑上有VS2010和VS2012)。消息:LNK1123:转换为COFF期间失败:文件无效或损坏。以前只用VS2010没问题。对于VS2012环境,建议(参见SOhere):使用EnableIncrementalLinkingNO编译卸载.net4.5因为我没有将Qt与VS2012结合使用(所以没有插件),所以我不能setuptheprojectasmentioned.我也不能卸载.net4.5(另一个项目需要)。有机会解决这个问题吗?我有一些相关的问题是否可以针对VS2012C++编译器进行编译?Hereitsays为此,我需要自己

c++ - 如何从 Boost Spirit 中的函数中抛出 expectation_failure?

在Boost::Spirit中,如何从绑定(bind)了Boost::Bind的函数中触发expectation_failure?背景:我解析了一个包含复杂条目的大文件。当一个条目与前一个条目不一致时,我想失败并抛出一个expectation_failure(包含正确的解析位置信息)。当我解析一个条目时,我绑定(bind)了一个函数来确定该条目是否与之前看到的不一致。我编了一个小玩具示例来说明这一点。在这里,我只是想在int不能被10整除时抛出一个expectation_failure:#include#include#include#include#includenamespaceq