草庐IT

nothrow_move_constructible

全部标签

PHP DateTime __construct() 无法解析位置 x 处的时间字符串 (xxxxxxxx)

我在尝试使用时间戳创建新的DateTime对象时遇到了这个构造错误:Exception:DateTime::_construct():Failedtoparsetimestring(1372622987)atposition8(8):UnexpectedcharacterinDateTime->_construct()对象创建代码为:$start_date=newDateTime("@{$dbResult->db_timestamp}");其中$dbResult->db_timestamp是从数据库中获取的有效unix时间戳。有问题的时间戳是:1372622987如果传递的格式无效,我

php - PDO::__construct():服务器向客户端发送未知字符集 (255)。请向开发人员报告

我正在尝试从Symfony3应用程序连接到MySQL数据库。但是当尝试从Symfony控制台命令创建MySQL模式时,我收到此错误:PDO::__construct():Serversentcharset(255)unknowntotheclient。请向开发者报告PHP和MySQL都在Docker容器中运行。MySQL版本:8.0.1PHP版本:7.1.3驱动程序:pdo_mysql字符集:UTF8dsn:"mysql:host=mysql;dbname=database;charset=UTF8;"有什么想法吗? 最佳答案 My

android - 在谷歌地图 api 2 上 move 标记

如何在GooglemapsapiV2上move标记?我正在使用下面的代码,但它不会在map上move标记。我在这里做错了什么?这应该在位置更改时起作用,因此我添加了onLocationChanged方法,并且正在获取位置详细信息并尝试在新细节上move标记,但这不起作用。这是我的代码:importcom.google.android.gms.common.ConnectionResult;importcom.google.android.gms.common.GooglePlayServicesUtil;importcom.google.android.gms.maps.CameraU

c++ - 在 VS1012 中使用 std::move 将 std::unique_ptr 发送到 std::thread

在VisualStudio2012中出现以下错误。voiddo_something(std::unique_ptri);std::unique_ptri(newint);std::thread(do_something,std::move(i));Error3errorC2248:'std::unique_ptr::unique_ptr':cannotaccessprivatememberdeclaredinclass'std::unique_ptr'c:\programfiles(x86)\microsoftvisualstudio11.0\vc\include\functional

c++ - 允许类的用户 move 私有(private)成员

假设我有这门课:classMessage{public:usingPayload=std::map;Message(intid,Payloadpayload):id_(id),payload_(std::move(payload)){}intid()const{returnid_;}constPayload&payload()const{returnpayload_;}private:intid_;Payloadpayload_;};其中Payload可能很大且复制成本很高。我想让这个Message类的用户有机会move有效负载,而不必复制它。这样做的最佳方法是什么?我可以想到以下几种

c++ - 将对象从一个 unordered_map move 到另一个容器

我的问题是安全问题。我搜索了cplusplus.com和cppreference.com,它们在std::move期间似乎缺乏迭代器安全性。具体来说:使用对象已被move的迭代器调用std::unordered_map::erase(iterator)是否安全?示例代码:#include#include#include#include#includeclassA{public:A():name("defaultctored"),value(-1){}A(conststd::string&name,intvalue):name(name),value(value){}std::strin

c++ - 为什么 C++11/14 中的 std::forward 没有 std::move_if_noexcept 对应项?

我观看了ScottMeyers在GoingNative2013“AnEffectiveC++11/14Sampler”上的演讲,他解释了std::move_if_noexcept的使用。所以我认为应该有一个std::forward_if_noexcept来保证forward的异常安全?为什么标准库中没有这样的东西?有没有其他保证的可能? 最佳答案 前向语义已经是有条件的,即它们保留其参数的值类别。另一方面,移动无条件地将其参数的值类别(从左值变为右值)更改为右值(引用),std::move_if_noexcept获得基于移动构造函数

c++ - 对象返回时是否保证被 move ?

我知道,当通过值传递一个对象给函数时,如果有一个move构造函数,总是会调用它,假设没有复制省略。按值返回对象呢?例如,假设我们有一个类Foo,它有一个move构造函数,我们有一个返回Foo对象的函数。Foog(){Foof;//dosomethingwithfreturnf;}如果我们假设没有RVO,是否保证调用move构造函数?更新:我想我没有清楚地表明我的意图。我只是想知道在最坏的情况下我可以让对象move而不是复制。RVO或NRVO发生,我很高兴。而且我还应该说move构造函数和move赋值没有被删除,并且是正确实现的。 最佳答案

c++ - ifstream的move构造函数是否被隐式删除?

我有以下简单的类:classSource{public:Source()=default;Source(Sourceconst&)=delete;Source(Source&&)=default;explicitSource(std::stringconst&fileName):inputStream(fileName),path_(fileName){}~Source()=default;autopath()const->std::string{returnthis->path_;}std::ifstreaminputStream;private:std::stringpath_;}

c++ - vector 重新分配使用复制而不是 move 构造函数

您好,我使用gcc4.7创建了一个带有noexceptmove构造函数的类Foo,并将vector保留大小设置为2,以便在添加第三个项目时它必须重新分配大小。执行此操作时,它似乎调用了复制构造函数而不是move构造函数。我在这里遗漏了什么吗?#include#includeclassFoo{public:Foo(intx):data_(x){std::coutv;v.reserve(2);v.emplace_back(1);std::cout输出:constructingAdded1constructingAdded2constructingCopyconstructingCopyco