c++ - 为什么以及何时值得使用指向指针的指针?

标签 c++ pointers

<分区>

Possible Duplicate:
How do pointer to pointers work in C?

你好,

虽然我认为我已经通过了编程的新手阶段,但我仍然有一些问题不知何故无法找到它们的解释。是的,那里有很多“如何做”,但几乎总是没有人解释为什么和/或何时一种技术有用。

就我而言,我发现在某些情况下,在 C++ 中使用指向指针的指针。指向对象的指针还不够吗?有哪些好处? 应该在什么地方或什么时候使用指向指针的指针?在这件事上我有点迷失了方向。

我希望有时间经验的专家能够回应这个问题,希望其他没有那么有经验的程序员也有同样的担忧。 ;-)

谢谢大家

朱伦。

最佳答案

嗯,回答这样一个笼统的问题有点困难。

C++ 程序员的第一个答案肯定是:不要在 C++ 中使用指针!由于您有许多比指针更安全的方法来处理问题,因此您的目标之一就是首先避免它们:)

所以指向指针的指针在C++中很少使用。它们主要用于 C。首先,因为在 C 中,字符串是“char*”,所以当您需要“指向 C 字符串的指针”时,您以“char**”结尾。其次,由于在 C 中没有引用,当您需要一个修改指针或将指针作为输出值的函数时,您需要提供一个指向指针参数的指针。您通常会在分配内存的函数中发现这一点,因为它们会为您提供指向已分配内存的指针。

如果你采用 C++ 方式,尽量避免使用指针,你通常会有更好的方法。

我的2c

关于c++ - 为什么以及何时值得使用指向指针的指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3083355/

相关文章:

c++ - 在没有库的情况下用 C 解析 XML。

c - 需要帮助理解功能逻辑

string - 使用 reflect.StringHeader 将字节转换为字符串仍然分配新内存?

C 系统调用和消息

c++ - 链表 pop_back 实现忽略指向 nullptr 的指针

c++ - 将数组参数传递给主函数索引始于1 c++

c++ - 动态分配 stdlib 堆栈?

c++ - 在 C++/CLI 包装器中访问私有(private) C++ 方法

c++ - 是否可以声明模板的模板?

c++ - 如何使用 C++ 复制几个具有不同扩展名的文件