Использование delete для указателей, переданных в качестве аргументов функции

Это нормально (и законно), чтобы удалить указатель, который был передан в качестве аргумента функции, например:

#include<iostream>

class test_class{
public:
    test_class():h(9){}
    int h;
    ~test_class(){std::cout<<"deleted";}
};

void delete_test(test_class* pointer_2){
    delete pointer_2;
}

int main(){
    test_class* pointer_1;

    while(true){
        pointer_1 = new test_class;

        //std::cout<<pointer_1->h;

        delete_test(pointer_1);
    }
}

Теперь все отлично, но я просто хочу убедиться, что так будет всегда.

Ответы на вопрос(7)

Ваш ответ на вопрос