我有一个静态类方法,需要访问指针MyTypePointer,因此必须声明为静态.由于它是一个模板类,我必须将方法放在头文件中,但我不能在头文件中定义MyTypePointer.
所以我得到了"未定义的引用"错误,因为没有声明MyTypePointer.如何使这个工作/声明MyTypePointer.
myclass.h
template <typename A, typename B>
class PathfindingClass {
typedef std::vector<GenericEdgeClass<A, B>*> MyType;
static MyType *MyTypePointer;
};
template <typename A, B>
void MyClass<A, B>::MyMethod(int x, int y) {
//do something with MyTypePointer
}
Run Code Online (Sandbox Code Playgroud)
非常感谢你.
我能找到一个点之间的距离MyPoint和多边形MyPolygon与
double dist = boost::geometry::distance(MyPoint, MyPolygon)
Run Code Online (Sandbox Code Playgroud)
显然,MyPolygon必须在某处计算实际的最近点.有没有一种简单的方法来获得最接近的点?我在Boost文档中找不到任何内容,我确信其他人也有这个问题.
谢谢