Респутор обычно не называется явно. Зачем все равно делать это?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Респутор обычно не называется явно. Зачем все равно делать это?

Сообщение Anonymous »

Я понимаю, что в большинстве случаев мы не должны явно называть деструктором. Тем не менее, я увидел пример из C ++ 11 Стандартный N3485 Раздел 13.4.5 Аргументы шаблона: < /p>


Явный деструктор призыв к объекту, который имеет тип, который
является специализацией шаблона класса, может четко указать
template-arguption-arguption. Пример: < /p>

template struct A {
~A();
};

void f(A* p, A* q) {
p->A::~A(); // OK: destructor call
q->A::~A(); // OK: destructor call
}
< /code>
< /blockquote>

Мне кажется, что мы можем явно назвать деструктор в этом случае, не могли бы вы объяснить мне почему? Что означают эти Destructor в этом примере? Почему они разумные? /> Редактировать: < /strong> я нашел из C ++ Faq, что мы не должны явно вызывать деструктор по локальной переменной.

Подробнее здесь: https://stackoverflow.com/questions/167 ... o-that-any
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»