牛骨文教育服务平台(让学习变的简单)
博文笔记

C++ new 和 函数指针的数组

创建时间:2014-09-09 投稿人: 浏览次数:684

参考资料

   

   

   

#include <iostream>

using namespace std;

   

   

void f(){

cout << "hello, world" << endl;

}

   

int main() {

void (*(*p)) () = new (void (*[7]) ());

for(int i = 0; i < 7; i++) {

p[i] = f;

}

   

for(int i = 0; i < 7; i++) {

(p[i])();

}

   

delete [] p;

   

        return 0;

}

   

来验证下应该使用delete[];

覆盖operator new 和 operator new[];

void* operator new(std::size_t count){

cout << "new" << endl;

return malloc(count);

}

   

void* operator new[](std::size_t count){

cout << "new[]" << endl;

return malloc(count);

}

   

结果如下:

   

   

   

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。