Memory 结构中的指针会导致内存泄漏?

Memory 结构中的指针会导致内存泄漏?,memory,pointers,memory-leaks,Memory,Pointers,Memory Leaks,我在网上找不到这方面的任何提及。。。在结构中放置指针不是一件坏事吗?(至少在现代面向对象编程中)程序员不可避免地会产生内存泄漏,对吗?(除非他们每次使用它时都会断开内存的关联) 假设以上是正确的。。。在结构中使用指针被认为是一种不好的做法吗特别是会计潜在的内存泄漏?< p>假设这是C++,如果这个指针指向一个对象(或者对象数组),它是由结构> 的实例(即,实例负责正确删除对象),则将一个哑指针放入一个结构> 确实是危险的。p> 复制struct的实例意味着复制其所有成员。在此之后,您将得到该结构

我在网上找不到这方面的任何提及。。。在结构中放置指针不是一件坏事吗?(至少在现代面向对象编程中)程序员不可避免地会产生内存泄漏,对吗?(除非他们每次使用它时都会断开内存的关联)


假设以上是正确的。。。在结构中使用指针被认为是一种不好的做法吗特别是会计潜在的内存泄漏?

< p>假设这是C++,如果这个指针指向一个对象(或者对象数组),它是由<代码>结构> <代码>的实例(即,实例负责正确删除对象),则将一个哑指针放入一个<代码>结构> <代码>确实是危险的。p> 复制
struct
的实例意味着复制其所有成员。在此之后,您将得到该结构的多个实例,这些实例具有指向同一对象的指针。当所有这些实例都将被删除时,您必须删除指针引用的对象。然而,如果其中一个实例即将被删除,通常很难判断是否还有其他实例存在


解决这个问题的一种方法是引用计数,通过巧妙地实现构造函数、析构函数和赋值来完成。幸运的是,您不需要自己实现它,因为它已经在所谓的智能指针中完成了。您的标准库提供了TR1的
std::TR1::shared_ptr
,或者它已经附带了C++11的
std::shared_ptr
,或者您可以下载并使用它们的

我们在说什么语言?CC++:这是构造函数和析构函数的全部内容。