Wpis z mikrobloga

@0d27c4e9064f628adbc99e547a23306e: Tak o ile zdefiniujesz poprawny operator przenoszenia (move assigment). Zazwyczaj to domyślny operator przenoszenia korzysta z konstruktora przenoszącego.
Ale generalnie jest bardzo głupie, po za tym nie inicjalizujesz pól a wywołujesz clear(); co prawdopodobnie jest błędem.
Jezeli natomiast korzystasz z std::unique_ptr to one są zawsze poprawnie zainicjalizowane, a i domyśny move constructor zrobi to co będziesz chciał.
  • Odpowiedz