C++ - std::exchange
C++14부터 사용 가능.
아래의 파일을 포함해야 한다
#include <utility>
함수 원형
template< class T, class U = T >
T exchange( T& obj, U&& new_value );
예제 코드
flags_type flags(flags_type newf)
{ return std::exchange(flags_, newf); }
s.flags(12)
void f() { std::cout << "f()"; }
void (*fun)();
std::exchange(fun,f);
std::vector<int> v;
std::exchange(v, {1,2,3,4});
이 글은 2020-05-07에 작성되었습니다.