Partager via


has_nothrow_assign Class

Les tests si le type ne lève pas en fonction assignent.

template<class Ty>
    struct has_nothrow_assign;

Paramètres

  • Ty
    le type à l'interroger.

Notes

Une instance de l'attribut de type est la valeur true si le type Ty contient un opérateur d'assignation de copie de declspec (nothrow), sinon il est false.

Une fonction de declspec (nothrow) est une fonction qui a un spécificateur vide throw, ou une fonction que le compilateur peut sinon déterminer ne lève pas d'exception.

Exemple

 

// std_tr1__type_traits__has_nothrow_assign.cpp 
// compile with: /EHsc 
#include <type_traits> 
#include <iostream> 
 
struct trivial 
    { 
    int val; 
    }; 
 
struct throws 
    { 
    throws() throw(int) 
        { 
        } 
 
    throws(const throws&) throw(int) 
        { 
        } 
 
    throws& operator=(const throws&) throw(int) 
        { 
        } 
 
    int val; 
    }; 
 
int main() 
    { 
    std::cout << "has_nothrow_assign<trivial> == " << std::boolalpha 
        << std::has_nothrow_assign<trivial>::value << std::endl; 
    std::cout << "has_nothrow_assign<throws> == " << std::boolalpha 
        << std::has_nothrow_assign<throws>::value << std::endl; 
 
    return (0); 
    } 
 
  

Configuration requise

en-tête : <type_traits>

l'espace de noms : type

Voir aussi

Référence

<type_traits>

has_trivial_assign Class

Autres ressources

<type_traits> membres