首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

std::any::emplace

template< class ValueType, class... Args > std::decay_t<ValueType>& emplace( Args&&... args );

(1)

(since C++17)

template< class ValueType, class U, class... Args > std::decay_t<ValueType>& emplace( std::initializer_list<U> il, Args&&... args );

(2)

(since C++17)

将包含的对象更改为std::decay_t<ValueType>从争论中构建的。

首先销毁当前包含的对象%28(如果有%29)reset(),然后:

1%29构造一个类型的对象。std::decay_t<ValueType>,,,直接-非列表-初始化从std::forward<Args>(args)...,作为包含的对象。此重载只参与在下列情况下的重载解决方案:std::is_constructible_v<std::decay_t<ValueType>, Args...>std::is_copy_constructible_v<std::decay_t<ValueType>>都是true...

2%29构造一个类型的对象。std::decay_t<ValueType>,,,直接-非列表-初始化从il,std::forward<Args>(args)...,作为包含的对象。此重载只参与在下列情况下的重载解决方案:std::is_constructible_v<std::decay_t<ValueType>,std::initializer_list<U>&, Args...>std::is_copy_constructible_v<std::decay_t<ValueType>>都是true...

模板参数

ValueType

-

contained value type

类型要求

-性病::腐烂[医]T型<ValueType>必须符合CopyConstrucable的要求。

返回值

对新包含的对象的引用。

例外

抛出任何异常。T%27s构造函数。如果引发异常,则先前包含的对象%28(如果有%29已被销毁)和*this不包含值。

另见

(constructor)

constructs an any object (public member function)

reset

destroys contained object (public member function)

代码语言:txt
复制
 ? cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com