草庐IT

reset_color

全部标签

c++ - 在 std::shared_ptr 上使用 .reset() 是否会删除所有实例

我是shared_ptr的新手,我正在尝试找出.reset()函数的确切功能。#include#includeusingnamespacestd;classSomeClass{};intmain(){shared_ptrsp(nullptr);//dosomestuff,spnowhas10co-ownerscout会输出100所以自从我使用了重置功能后,所有实例都从内存中删除了吗?如,我刚刚用sp消除了任何可能的内存泄漏吗?显然这是我快速编造的一个玩具示例,如果有任何错误,请见谅。跟进情况:shared_ptrreturnThis(){shared_ptrsomeObject(new

c++ - 为什么 std::unique_ptr::reset() 总是无异常?

Arecentquestion(尤其是我的回答)让我想知道:在C++11(和更新的标准)中,析构函数总是隐式的noexcept,除非另有说明(即noexcept(false))。在这种情况下,这些析构函数可以合法地抛出异常。(请注意,这仍然是一种你应该真正知道自己在做什么——那种情况!)然而,所有的重载std::unique_ptr::reset()被声明为始终为noexcept(见cppreference),即使析构函数ifT不是,如果析构函数在reset()期间抛出异常,将导致程序终止.类似情况适用于std::shared_ptr::reset().为什么是reset()总是noe

c++ - 使用 shared_ptr.reset 还是 operator = 更好?

我正试图围绕C++11的新习语展开思考。似乎至少使用shared_ptr与使用newT()之间存在实质性区别和make_shared().但是如何重置共享指针以指向某事物的新实例。以前,我通常会使用reset(newT())成员。但是,这不会遇到与一开始不使用make_shared()相同的问题吗?(即它不允许make_shared分配对象,因此它被迫将引用计数放在单独的分配中,而不是与T本身在同一分配中?)继续使用会不会更好:mysharedptr=make_shared(args...);或者有没有更好的方法?并且不应该像make_shared那样重置提供参数的可变参数转发,以便可

c++ - std::shared_ptr: reset() 与赋值

这是一个基本问题,但我没有找到以前的帖子。以下问题的标题听起来可能与我的问题相同,但问题本身与标题不匹配:isitbettertouseshared_ptr.resetoroperator=?我对std::shared_ptr的reset()成员函数的用途感到困惑:除了赋值运算符之外,它还有什么作用?具体来说,给出定义:autop=std::make_shared(1);以下两行是否等效:p=std::make_shared(5);p.reset(newint(5));这些呢:p=nullptr;p.reset();如果这两行在两种情况下都是等价的,那么reset()的目的是什么?编辑

C++11 清除shared_ptr时,我应该使用reset还是设置为nullptr?

我有一个关于C++11最佳实践的问题。清除shared_ptr时,我应该使用不带参数的reset()函数,还是应该将shared_ptr设置为nullptr?例如:std::shared_ptrfoo(newstd::string("foo"));foo.reset();foo=nullptr;有什么真正的区别,或者这两种方法都有优点/缺点吗? 最佳答案 Isthereanyrealdifference,orarethereadvantages/disadvantagestoeitherapproach?这两种选择是绝对等价的,因为

javascript - 如何使用带有 .reset() 方法的 jQuery 重置表单

当我单击重置按钮时,我的工作代码可以重置我的表单。然而,当我的代码变长后,我意识到它不再起作用了。ControlButtonsConfigurationIndexSwitchResponseNumberDescription1234还有我的jQuery:$('#configreset').click(function(){$('#configform')[0].reset();});为了使.reset()方法起作用,我应该在代码中包含一些源代码吗?以前我使用的是:并且.reset()方法正在工作。目前我正在使用这可能是原因之一吗? 最佳答案

Git提示Connection was reset, errno 10054解决方法

今天晚上准备提交代码到远程仓库的,但是突然报错10054提示内容:fatal:unabletoaccess'https://github.com/xxxxx':OpenSSLSSL_read:Connectionwasreset,errno10054输入各种命令都解决不了接下来分享解决方法使用gitconfig 命令用来配置git的配置文件通过:http.sslVerifyfalse全局来设置gitconfig--globalhttp.sslVerify"false"我输入以下命令后Git就可以正常提交到远程仓库了  但是紧接着又遇到了新问题 提示错误:necttogithub.comport

jmeter压测报java.net.SocketException: Connection reset

最近在压测的过程中,聚合报告中存在错误,1000个并发,错误率为2.几,本以为是系统接口的问题。后来查看资料发现,是本地配置导致通过查看结果树发现,响应数据报java.net.SocketException:Connectionreset根据网上资料是如下解决的解决办法:新建txt,保存以下脚本修改后缀为reg文件,编辑值如下,保存后双击执行;重启电脑,再次压测即不会出现报错。解析中值为10进制,下方脚本已全转换为16进制。WindowsRegistryEditorVersion5.00[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\

php - curl 错误 : Recv failure: Connection reset by peer - PHP Curl

我遇到了这个奇怪的错误,CURLERROR:Recvfailure:Connectionresetbypeer如果我没有连接到服务器并且突然尝试通过PHP中的CURL连接到服务器,则会发生这种情况,我会收到错误消息。当我再次运行CURL脚本时,错误消失,然后一直运行良好,如果我让远程服务器空闲大约30分钟或重新启动远程服务器并尝试再次连接,我再次收到错误。所以看起来连接是空闲的,然后服务器突然唤醒,然后工作,然后再次休眠。这就是我的CURL脚本的外观。$url=Yii::app()->params['pdfUrl'];$body='title='.urlencode($title).'

java - 是什么导致我的 java.net.SocketException : Connection reset?

这个问题在这里已经有了答案:java.net.SocketException:Connectionreset(14个回答)关闭3年前。我们在日志中看到频繁但间歇性的java.net.SocketException:Connectionreset错误。我们不确定Connectionreset错误实际来自何处,以及如何进行调试。该问题似乎与我们尝试发送的消息无关。请注意,该消息不是connectionresetbypeer。有关此异常的典型原因可能是什么以及我们如何进行的任何建议?这是一个有代表性的堆栈跟踪(com.companyname.mtix.sms是我们的组件):java.net.