1
鑑於這兩個函數聲明:不一致的行爲傳遞參數在C++
void initialize(int p, std::vector<Vector3> &);
std::vector<Vector3> toNurbsCoords(std::vector<Vector3>);
爲什麼這項工作
Nurbs nurbs;
std::vector<Vector3> pts = nurbs.toNurbsCoords(points);
nurbs.initialize(degree, pts);
,而這將引發編譯時錯誤?
Nurbs nurbs;
nurbs.initialize(degree, nurbs.toNurbsCoords(points));
//error: no matching function for call to 'Nurbs::initialize(int&, std::vector<Vector3>)'
欲瞭解更多信息,請參閱[這個問題](http://stackoverflow.com/q/19375634/1782465)。 – Angew