カスタムタイプのコンストラクターを作成しようとしていますが、何らかの理由で呼び出そうとしています。別のクラスのコンストラクター定義のコンストラクターであると推測しています.同じ症状に合うものは見つかりませんでした私が探しているものがわからないかもしれないので、他にも質問があります。
私が電話するとき:
LatLngBounds clusterBounds(&boundsNorthEast, &boundsSouthWest);
main.cpp では、LatLngBounds.cpp で、次の行で「'LatLng:LatLng() の呼び出しに一致する機能がありません」が 2 回スローされます。
LatLngBounds::LatLngBounds(LatLng &newSouthWest, LatLng &newNorthEast)
誰でもアイデアはありますか?
ドリュー・J・ソンネ。
IDE: Xcode 3.2 (デバッグ 10.5 をターゲット)
OS: OSX 10.6
コンパイラ: GCC 4.2
アーキテクチャ: x86_64
main.cpp:
std::vector<std::string> argVector;
... fill up my argVector with strings..
vector<double> boundsVector = explodeStringToDouble(argVector[i]);
LatLng boundsNorthEast(0, boundsVector[0], boundsVector[1]);
LatLng boundsSouthWest(0, boundsVector[2], boundsVector[3]);
LatLngBounds clusterBounds(&boundsNorthEast, &boundsSouthWest);
LatLngBounds.h
#ifndef __LATLNGBOUNDS
#define __LATLNGBOUNDS
#include "LatLng.h"
class LatLngBounds {
private:
LatLng northEast;
LatLng southWest;
public:
LatLngBounds(LatLng&,LatLng&);
};
#endif
LatLngBounds.cpp
#include "LatLngBounds.h"
#include "LatLng.h"
LatLngBounds::LatLngBounds(LatLng &newSouthWest, LatLng &newNorthEast)
{
this->southWest = newSouthWest;
this->northEast = newNorthEast;
};
LatLng.h
#ifndef __LATLNGDEF
#define __LATLNGDEF
class LatLng {
public:
LatLng(int,double,double);
private:
double lat, lng;
int id;
};
#endif
LatLng.cpp
#include "LatLng.h"
LatLng::LatLng(int newId, double newLat, double newLng)
{
/* Grab our arguments */
id = newId;
lat = newLat;
lng = newLng;
};