- any[meta header]
- std[meta namespace]
- function template[meta id-type]
- cpp17[meta cpp]
namespace std {
void swap(any& x, any& y) noexcept;
}2つのanyオブジェクトを入れ替える。
x.swap(y);- swap[link swap.md]
#include <iostream>
#include <any>
int main()
{
std::any x = 3;
std::any y = "Hello";
std::swap(x, y);
std::cout << std::any_cast<const char*>(x) << std::endl;
std::cout << std::any_cast<int>(y) << std::endl;
}- std::swap[color ff0000]
- std::any_cast[link /reference/any/any_cast.md]
Hello
3
- C++17
- Clang: 4.0.1
- GCC: 7.3
- Visual C++: ??