The question is how my headline claims.
I ask because I have a class with a default move constructor, but the code trying to perform copy assignment does not indicate that the copy assignment operator has been deleted (according to Visual Studio 2015).
So, I checked the rules here for implicitly declared copy assignment operators:
An assignment operator by implicit declaration or default for a class T is defined as deleted in any of the following statements:
- ...
- T has a declared move constructor
- T has a custom move destination operator
So basically I'm not sure if the default move constructor is considered a declared user. My gut tells me yes, but when it comes to the standard, I always like to be sure, because assumptions can be costly.
c ++ c ++ 11
void.pointer
source share