Standard library header

From Get docs

Standard library header

This header is part of the general utility library.


Name Description



Objects that hold instances of any CopyConstructible type.



exception thrown by the value-returning forms of any_cast on a type mismatch




specializes the std::swap algorithm



type-safe access to the contained object

(function template)


namespace std {
  // class bad_any_cast
  class bad_any_cast;
  // class any
  class any;
  // non-member functions
  void swap(any& x, any& y) noexcept;
  template <class T, class... Args>
  any make_any(Args&& ...args);
  template <class T, class U, class... Args>
  any make_any(initializer_list<U> il, Args&& ...args);
  template<class ValueType>
  ValueType any_cast(const any& operand);
  template<class ValueType>
  ValueType any_cast(any& operand);
  template<class ValueType>
  ValueType any_cast(any&& operand);
  template<class ValueType>
  const ValueType* any_cast(const any* operand) noexcept;
  template<class ValueType>
  ValueType* any_cast(any* operand) noexcept;

Class std::bad_any_cast

class bad_any_cast : public bad_cast {
  const char* what() const noexcept override;

Class std::any

class any {
  // construction and destruction
  constexpr any() noexcept;
  any(const any& other);
  any(any&& other) noexcept;
  template <class ValueType> any(ValueType&& value);
  template <class ValueType, class... Args>
  explicit any(in_place_type_t<ValueType>, Args&&...);
  template <class ValueType, class U, class... Args>
  explicit any(in_place_type_t<ValueType>, initializer_list<U>, Args&&...);
  // assignments
  any& operator=(const any& rhs);
  any& operator=(any&& rhs) noexcept;
  template <class ValueType> any& operator=(ValueType&& rhs);
  // modifiers
  template <class ValueType, class... Args>
  void emplace(Args&& ...);
  template <class ValueType, class U, class... Args>
  void emplace(initializer_list<U>, Args&&...);
  void reset() noexcept;
  void swap(any& rhs) noexcept;
  // observers
  bool has_value() const noexcept;
  const type_info& type() const noexcept;

Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.