使用示例为C ++的std :: is_trivially_move_assignable

使用示例为C ++的std :: is_trivially_move_assignable

C ++ STL中的 std :: is_trivially_move_assignable 模板存在于 < type_traits>头文件中。C ++ STL的 std :: is_trivially_move_assignable 模板用于检查 T 是否是平凡的可移动分配类型。如果 T 是平凡的可移动分配类型,则返回布尔值true,否则返回false。

头文件:

#include<type_traits>

模板类:

template <class T>
struct is_trivially_move_assignable;

语法:

std :: is_trivially_move_assignable<T> :: value

参数: 模板 std :: is_trivially_move_assignable 接受单个参数 T(Trait类) ,以检查 T 是否为平凡的可移动分配,否则不是。

返回值: 模板 std :: is_trivially_move_assignable 返回布尔变量,如下所示:

  • True: 如果类型 T 是平凡的可移动分配。
  • False: 如果类型 T 不是平凡的可移动分配。

以下是演示C ++中的 std :: is_trivially_move_assignable 的程序:

程序:

// C ++ program to illustrate
// std :: is_trivially_move_assignable
#include<bits/stdc++.h>
#include<type_traits>
using namespace std;
  
// Declare Structures
class A {
};
  
struct B {
    B& operator=(B&&) = delete;
};
  
// Driver Code
int main()
{
  
    cout << boolalpha;
  
    cout << "int is_trivially_move_assignable? "
         << is_trivially_move_assignable<int> :: value
         << endl;
  
    cout << "A is_trivially_move_assignable? "
         << is_trivially_move_assignable<A> :: value
         << endl;
  
    cout << "B is_trivially_move_assignable? "
         << is_trivially_move_assignable<B> :: value
         << endl;
  
    cout << "int [2] is triviallay move assignable? "
         << is_trivially_move_assignable<int [2]> :: value
         << endl;
  
    return 0;
}
int is_trivially_move_assignable? true
A is_trivially_move_assignable? true
B is_trivially_move_assignable? false
int [2] is triviallay move assignable? false

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

C++ 教程