std::remove_reference

std::remove_referenceios

  用于移除类型的引用,返回原始类型。spa

一、可能的实现。code

  

二、例子.blog

#include <iostream> // std::cout
#include <type_traits> // std::is_same
 
template<class T1, class T2>
void print_is_same() {
  std::cout << std::is_same<T1, T2>() << '\n';
}
 
int main() {
  std::cout << std::boolalpha;
 
  print_is_same<int, int>();
  print_is_same<int, int &>();
  print_is_same<int, int &&>();
 
  print_is_same<int, std::remove_reference<int>::type>();
  print_is_same<int, std::remove_reference<int &>::type>();
  print_is_same<int, std::remove_reference<int &&>::type>();
}

  输出 :rem

true
false
false
true
true
true

 

参考:get

一、https://zh.cppreference.com/w/cpp/types/remove_referenceit

本站公众号
   欢迎关注本站公众号,获取更多信息