静态成员函数的局部变量的内存泄露有关问题,求指教
静态成员函数的局部变量的内存泄露问题,求指教有一个类,有一个静态成员函数:C/C++ codeclass Test{static
静态成员函数的局部变量的内存泄露问题,求指教
有一个类,有一个静态成员函数:
C/C++ codeclass Test{static void func(Data *p);};
这个静态成员函数中对局部变量进行了new,但没有delete,如:
C/C++ codevoidTest::func (Data *p ){ p = new Data();}
这样会造成内存泄露吗?十分迷惑,求指教
[解决办法]有new没delete当然会造成内存泄露
[解决办法]如果不反复调用func应该就没事
否则的话,最好释放下
[解决办法]必须是泄露了啊
[解决办法]每调用一次就会漏出一点
[解决办法]和普通成员函数里面一样,内存泄露
静态成员函数中的静态意为不和类的实例相关联,里面的变量除非是调用其他静态变量,否则照样是临时变量
[解决办法]泄露了,即使调用 一次,程序退出时也不会自动调用 delete
这种情况还是在静态函数外部调用 new
[解决办法]静态函数只是不能改变非静态成员的值,除此之外和普通成员函数的行为一样的。