【发布时间】:2012-03-11 10:29:36
【问题描述】:
我的问题如下: 主要是我在某个地方
Shape* ext = NULL;
FieldProbPhys2D* Fprob = NULL;
(...)
createCircleExt(ext, Fprob);
并且我想在 main 之外分配形状指针(我承认这只是没有文本重载的 main 的问题)。 我有一个 Utility.h 及其对应的 Utility.cpp(其中定义了 createCircleExt):
void createCircleExt(Shape* f, FieldProbPhys2D* field) {
(...)
f = new Circle(r, r, r);
(...)
field = new FieldProbPhys2D(Nx, Ny, 2*r, 2*r, Vg);
}
当我运行它时,我得到一个分段错误,valgrind 告诉我:访问不在地址 0x0 的映射区域内
这是否意味着分配只是本地的?如果是这种情况,我该如何解决?
非常感谢!
西蒙
【问题讨论】:
标签: function pointers segmentation-fault