std::is_assignable, std::is_trivially_assignable, std::is_nothrow_assignable – cppreference.com
Aus cppreference.com
<metanoindex/>
<tbody> </tbody>
| definiert in Header <type_traits> |
||
|
|
(1) | (seit C++11) |
|
|
(2) | (seit C++11) |
|
|
(3) | (seit C++11) |
1)
Wenn der Ausdruck std::declval<T>() = std::declval<U>() in unevaluierten Rahmen wohlgeformt, bietet das Mitglied konstanten value gleich true. Für jede andere Art, value ist false .
Original:
If the expression std::declval<T>() = std::declval<U>() is well-formed in unevaluated context, provides the member constant value equal true. For any other type, value is false.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
2)
wie 1), aber eine Evaluierung der Abtretung Ausdruck wird nicht nennen sämtliche Aufgaben, die nicht trivial ist .
Original:
same as 1), but evaluation of the assignment expression will not call any operation that is not trivial.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
3)
wie 1), aber die Auswertung der Abtretung Ausdruck wird nicht nennen jede Operation, die nicht noexcept wird .
Original:
same as 1), but the evaluation of the assignment expression will not call any operation that is not noexcept.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Inherited from std::integral_constant
Member constants
Original:
The text has been machine-translated via Google Translate. (public static Mitglied konstanten) | |
Member functions
wandelt das Objekt Original: converts the object to The text has been machine-translated via Google Translate. (öffentliche Elementfunktion) | |
Member types
Type Original: Type The text has been machine-translated via Google Translate. |
Definition |
value_type
|
bool
|
type
|
std::integral_constant<bool, value>
|
Beispiel
#include <iostream> #include <string> #include <type_traits> struct Ex1 { int n; }; int main() { std::cout << std::boolalpha << "int is assignable from double? " << std::is_assignable<int, double>::value << '\n' << "int& is nothrow assignable from double? " << std::is_nothrow_assignable<int&, double>::value << '\n' << "string is assignable from double? " << std::is_assignable<std::string, double>::value << '\n' << "Ex1& is trivially assignable from const Ex1&? " << std::is_trivially_assignable<Ex1&, const Ex1&>::value << '\n'; }
Output:
int is assignable from double? false int& is nothrow assignable from double? true string is assignable from double? true Ex1& is trivially assignable from const Ex1&? true