草庐IT

auto_reset

全部标签

c++ - 以下哪一项是 "auto"推导指针类型的更正确方法?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭8年前。Improvethisquestion(非常基本的问题:)我发现以下两种方式都生成int*类型。我可以知道哪个更合适吗?inti=42;autoa=&i;auto*b=&i;(我试图将指针示例与引用示例相关联:autoc=i;和auto&d=i;。但似乎类比在这里不起作用.)编辑:我还发现另一个(密切相关的)例子很奇怪:autoi=42,p=&i;//failsatcompilationautoi=42,*p=&i;//pas

有关 java.io.IOException: Connection reset by peer 解决问题方法之一

有很多大佬已经终结出现这个错误的原因有一下几种1.服务器在接受处理用户请求时,自身的cpu、io、内存、线程等资源都是有最大限制的。当并发请求超过服务器的承载量时,服务器会停掉一些请求。(但是要注意如果实际的并发数量没有超过服务器的承载量,可能中了木马病毒问题导致的。这个时候需要分析了)。2.客户端关闭了浏览器,但是服务端还是继续发送数据。3.浏览器端按了Stop。(ps:有的文档说浏览器弹框阻止也类似stop情况,本人没有亲自测试。可以参考:这篇文章https://www.cnblogs.com/panxuejun/p/7160148.html)。上面两种都是客户端造成的,但是因为服务端在进

c++14 static constexpr auto 与 odr 用法

我有以下C++14代码:templatestructTest{staticconstexprautosomething{T::foo()};};这很好,只要T::foo()也是一个constexpr。现在我知道something是ODR使用的,所以我需要提供命名空间声明。我应该使用什么语法?templateconstexprautoTest::something;不起作用。谢谢! 最佳答案 通过using定义的类型名怎么样?templatestructTest{usingsomeType=decltype(T::foo());sta

c++ - 警告 : auto-importing has been activated without --enable-auto-import specified on the command line

我的环境:QtCreator2.3.1Qt4.7.4(32位)Windows7旗舰版(64位)尝试在QtforWindows中重建项目时,我遇到以下编译器警告:warning:auto-importinghasbeenactivatedwithout--enable-auto-importspecifiedonthecommandline.Thisshouldworkunlessitinvolvesconstantdatastructuresreferencingsymbolsfromauto-importedDLLs.发出此警告的项目包含一个DLL文件。尽管有警告,DLL中的类和函数

c++ - 试图理解 auto_ptr

我试图了解有关auto_ptr类如何工作的某些细节。假设您有以下类(class)(我是在一个网站上找到的,该网站上有人解释了赋值运算符的要点)。classTFoo:publicTSuperFoo{auto_ptrfBar1;auto_ptrfBar2;public:TFoo&TFoo::operator=(constTFoo&that);//variousothermethoddefinitionsgohere...}现在是赋值运算符的实现。TFoo&TFoo::operator=(constTFoo&that){if(this!=&that){auto_ptrbar1=newTBar

c++ - 为什么不能形成对 'decltype(auto)' 的引用

intmain(){decltype(auto)&&a=100;}以上代码,在GCC和Clang中出错。intmain(){decltype(int)&&a=100;}此代码正确。在N4296中,在§8.3.2/6Ifatypedef(7.1.3),atypetemplate-parameter(14.3.1),oradecltype-specifier(7.1.6.2)denotesatypeTRthatisareferencetoatypeT,anattempttocreatethetype“lvaluereferencetocvTR”createsthetype“lvaluere

python - Cython 扩展类 : How do I expose methods in the auto-generated C struct?

我现有的C++代码定义了一些我需要使用的类,但我需要能够将这些类发送到Python代码。具体来说,我需要在C++中创建类实例,创建Python对象作为这些C++对象的包装器,然后将这些Python对象传递给Python代码进行处理。这只是一个更大的C++程序的一部分,因此最终需要使用C/PythonAPI在C++中完成。为了让我的生活更轻松,我使用Cython定义扩展类(cdef类)作为我的C++对象的Python包装器。我使用的是典型格式,其中cdef类包含指向C++类的指针,然后在创建cdef类实例时对其进行初始化。因为如果我有一个现有的C++对象要包装,我也希望能够替换指针,所以

c++ - auto const & map 迭代器的类型是什么? C++

我需要修复我的旧项目中的一些错误,我认为这是重构部分代码的最佳时机。我有一个具有以下结构的map:std::map>ComponentMap;在我需要遍历一些底层子map的某个地方,我使用了以下内容:for(std::map::iteratoriter=ComponentMap[compNameString].begin();iter!=ComponentMap[compNameString].end();++iter){//somecodeif(IsComponentOfType(iter,sCOMP_PRINCIPAL))iter->second->GetComponentValu

c++ - 为什么 std::tr1::shared_ptr<>.reset() 如此昂贵?

分析一些大量使用shared_ptrs的代码,我发现reset()的开销出奇地大。例如:structTest{inti;Test(){this->i=0;}Test(inti){this->i=i;}};...autot=make_shared(1);...t.reset(somePointerToATestObject);跟踪最后一行中的reset()(在VC++2010下),我发现它创建了一个新的引用计数对象。有没有更便宜的方法,重用现有的引用计数并且不打扰堆? 最佳答案 在一般情况下,您不能重用现有的引用计数,因为可能有其他s

c++ - Win32 重置事件,如带有 boost C++ 的同步类

我需要一些让人想起Win32重置事件的机制,我可以通过与WaitForSingleObject()和WaitForMultipleObjects()具有相同语义的函数来检查(目前只需要..SingleObject()版本)。但我的目标是多个平台,所以我只有boost::threads(AFAIK)。我想出了下面的类(class),想问一下潜在的问题,以及它是否能胜任这项任务。提前致谢。classreset_event{boolflag,auto_reset;boost::condition_variablecond_var;boost::mutexmx_flag;public:rese