共用方式為


any class

any物件會儲存符合建構函式需求的型別實例,或沒有值。 不論它是否有預存實例或沒有值,都稱為 物件的狀態any

預存實例稱為 自主值。 如果 any 兩個對象都沒有任何值,或兩者都有包含的值,且這些值都相同,則兩個物件具有相同的狀態。

語法

class any;

成員

建構函式

名稱 描述
any 建構類型 any 的物件。

函式

名稱 描述
emplace any設定值。
has_value 如果 any 具有 值,則傳true回 。
reset 重設 any
swap 交換兩個 any 物件。
type 傳回型別 any

操作員

名稱 描述
operator= any 取代為另一 any個 的複本。

any

建構類型 any 的物件。 也包含解構函式。

constexpr any() noexcept;
any(const any& other);
any(any&& other) noexcept;
template <class T>
    any(T&& value);
template <class T, class... Args>
    explicit any(in_place_type_t<T>, Args&&...);
template <class T, class U, class... Args>
    explicit any(in_place_type_t<T>, initializer_list<U>, Args&&...);

~any();

emplace

any設定值。

template <class T, class... Args>
    decay_t<T>& emplace(Args&& ...);
template <class T, class U, class... Args>
    decay_t<T>& emplace(initializer_list<U>, Args&&...);

has_value

如果物件有值,any則傳true回 。

bool has_value() const noexcept;

operator=

any 內容取代為另一 any個 的複本。

any& operator=(const any& right);
any& operator=(any&& right) noexcept;
template <class T>
    any& operator=(T&& right);

參數

right
any要複製到這個 any的 。

reset

重設 any

void reset() noexcept;

swap

交換兩個 any 物件。

void swap(any& rhs) noexcept;

type

傳回型別 any

const type_info& type() const noexcept;

需求

標頭:<any>

命名空間std

標準: C++17 (至少 /std:c++17 使用 編譯。

另請參閱

<any>
any_cast
make_any
swap
bad_any_cast