std::swap(std::any)
来自cppreference.com
在标头 <any> 定义 | ||
void swap( any& lhs, any& rhs ) noexcept; | (C++17 起) | |
为 std::any 重载 std::swap 算法。通过调用 lhs.swap(rhs) 交换两个 any
对象。
参数
lhs, rhs | - | 要交换的对象 |
示例
运行此代码
#include <any> #include <print> #include <string> int main() { std::any p = 42, q = std::string{"Bishop"}; std::println("p: {}, q: {}", std::any_cast<int>(p), std::any_cast<std::string&>(q)); std::println("swap(p, q)"); std::swap(p, q); std::println("p: {}, q: {}", std::any_cast<std::string&>(p), std::any_cast<int>(q)); }
输出:
p: 42, q: Bishop swap(p, q) p: Bishop, q: 42
参阅
交换两个 any 对象 (公开成员函数) |