它是好(和法律),删除已被作为一个函数参数传递,如该指针:使用删除作为函数的参数传递指针
#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);
}
}
现在这编译好,但我只是想以确保它永远是那样的。
我总是发现令人惊讶的是,即使它是'const',删除指针也是合法的。 – 2009-12-10 16:51:16