c++ - 如何将指向数组的指针存储在数组中?
问题描述
在我的程序中,我有一个带有以下构造函数的类:
pp = new Particle*[maxN]
在一个函数中,我有:
// create the new particle and fill with data
pp[n] = new Particle;
pp[n]->charge = charge;
pp[n]->px = px;
pp[n]->py = py;
pp[n]->pz = pz;
// store the new particle pointer in the array
//...
问题是我不知道如何编写最后一条指令的代码,即
// store the new particle pointer in the array
你能帮助我吗?
解决方案
问题是我不知道如何编写最后一条指令的代码,即
// store the new particle pointer in the array
您已经在第一行完成了该操作:
pp[n] = new Particle;
new Particle
创建Particle
具有动态存储的对象,表达式的结果是指向该对象的指针。在 指向的数组pp[n] = ...
的索引处分配指针。n
pp
PS。在这样的类中拥有裸露的指针是一个糟糕的设计。为避免内存泄漏和未定义行为,建议改用容器。
推荐阅读
- javascript - 在scrollTo上禁用css滚动平滑
- .net - Task.ContinueWith 上有很多 CPU 时间?
- dialog - 有没有办法在 Microsoft Dynamics 365 上的对话框字段上进行自定义查找?
- python - 根据最接近的值选择行
- java - 如何在 JPQL 中使用“if else”或“case when”
- python - 使用 Python 将 Dask 数据帧转换为 Spark 数据帧
- java - 无法完全隐藏android素材卡背景
- python - 从文本文件中批量提取并放入另一个批处理文件行的中间
- javascript - 点网核心应用程序中的 IBM 大型机抓取
- java - 使用 Eclipse Milo JAva 客户端从 Rockwell OPC UA 服务器获取数据时出错