-1
在我的节目我有结构:初始化结构
struct point {
float x;
float y;
};
编辑:我需要创建
struct Path{
Point array[];
}
与功能init_path(Path *p, int size)
初始化。
我的问题是,如何定义函数? 在此先感谢。
在我的节目我有结构:初始化结构
struct point {
float x;
float y;
};
编辑:我需要创建
struct Path{
Point array[];
}
与功能init_path(Path *p, int size)
初始化。
我的问题是,如何定义函数? 在此先感谢。
你Path
可能是这样:
struct Path {
point* points;
};
void init_path(Path *path, int size) {
path->points = new point[size]();
}
但为什么你的教授希望的功能,而不是正确的构造函数/析构函数仍是一个谜。在这里你仍然需要拨打delete[]
在points
某处。使用以下结构,您不需要任何init
函数,对象将正确删除其资源。
struct Path {
Path(unsigned size) : points{ new point[size] } {}
~Path() { delete[] points; }
point* points;
};
是的,我虽然关于它。但不知道他为什么告诉我们将Path定义为点数组,而不是指针。不管怎样,谢谢!你确认这是最简单的方法;) – user224301
这完全不清楚你问的是什么。请提高你的问题!什么是'init_path()'应该做的? –
欢迎来到堆栈溢出。请花些时间阅读[The Tour](http://stackoverflow.com/tour),并参阅[帮助中心](http://stackoverflow.com/help/asking)中的资料,了解您可以在这里问。 –