1、 指针是不是只有new分配地址的才需要delete,比如
int i = 9;
int *p = &i;
这个我的理解是不需要delete。
2、比如新建一个线程AfxBeginThread(ProxyToClientThread,(void *)&p); 我不接收返回的句柄,当然也就无法close了,这样会造成内存泄露么?

解决方案 »

  1.   

    1.这个不需要delete,因为你没用new
    2.AfxBeginThread会自动调用关闭句柄的
      

  2.   

    1,不需要delete,因为没有在堆上分配内存,都是栈上的操作
    2. 那要看你的线程中是如何处理的,如果线程中没有泄露的话,这地方是不会泄露的CWinThread有自动删除功能
      

  3.   

    1 指针指向的是临时变量的地址,没有泄露
    2 如果线程中没有new对象,就不用考虑泄露的问题。。
      

  4.   

     使用malloc, new ,Heapalloc,realloc等在堆上分配的内存,就需要自己delete,其他的在栈上分配的,由系统自动回收。记住分配了的内存一旦不用就delete,可有效预防内存泄露。
      

  5.   

    AfxBeginThread不但不需要删除返回的指针,而且是不能删除返回的指针。(我猜的,常理应该是这样)new和delete成对调用,的确是这样。
      

  6.   

    你这个没有申请空间,当然不需要delete