Ben aşağıdaki gibi çiftleri bir çift dize bir harita ilan ediyorum:Başka bir std :: çifti içinde bir çift std :: çifti nasıl eklenir?
std::map<std::wstring,
std::pair<std::pair<long, long>,
std::pair<long, long>>> reference;
Ve olarak başlatılamıyor: Ancak
reference.insert(L"First",
std::pair<std::pair<long, long>,
std::pair<long, long>>(std::pair<long, long>(-1, -1),
std::pair<long, long>(0, 0)));
, Visual C++ Hayır "C2664, bana hata veriyor kurucu kaynak türünü alabilir veya kurucu aşırı yük çözünürlüğü belirsiz ".
Şablonları ve STL'yi kullanıyorum ve yanlış yaptığımı söyleyemiyorum.
o okunaklı hale getirmek için typedef en ve 'std :: make_pair' kullanın. – GManNickG
Gözlerinizde * bit * daha kolay hale getirmek için yeniden biçimlendirdim. – egrunin
Tüm bu 'std :: pair'leri yerleştirmek yerine' std :: tr1 :: tuple' işlevini kullanmaya başlayamadınız mı? Boost da bir tuple uygulamasına sahiptir. – Praetorian