о конструкторе копирования и перегруженном операторе присваивания

0

Я хотел бы знать, в каких ситуациях должен быть определен оператор-конструктор копирования или оператор присваивания. Из того, что я исследовал, я вижу, что всякий раз, когда значение передается значением или возвращается значением, необходимо определить конструктор копирования и перегруженный оператор присваивания. Однако, когда указатели или ссылки используются для передачи/возврата указателем или ссылкой (&), нужен ли нам оператор-конструктор/перегруженный оператор присваивания

class Sample
{
 public :
  // Assume a constructor that sets the node member
  SampleNode * getNode()
  {
    return _node;
  }
 private: 
  SampleNode * node;
}

class SampleNode
{
  public:
   void getValue()
   {
      return _value;
   }
  private: 
   unsigned int value;
}

main()
{
  Sample * ptr = new Sample(15);

  SampleNode *node = getNode(); // Do we need a copy constructor here?
}
Теги:

1 ответ

2
Лучший ответ

Определение указателя или ссылки на объект не требует использования каких-либо конструкторов.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню