Morgen,
ich denke mal ihr seit auch schon alle wach und freut euch ebenfalls tierisch auf meine Probleme ;p - sollte das nicht der Fall sein, legt euch einfach nochmal hin.
Also ich habe habe List-Klasse, mit einem Map. Sieht folgendermaßen aus:
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
struct D3D_Info
{
int i; //... usw
};
class List
{
public:
List();
~List();
void insertData(int iIndex,D3D_Info Info);
D3D_Info getData(int iIndex);
private:
map<int,D3D_Info> mD3D_Info;
map<int,D3D_Info> mD3D_pair;
map<int,D3D_Info>::iterator D3D_iterator;
};
//Und eben noch die Funktionen:
void List::insertData(int iIndex,D3D_Info Info)
{
mD3D_pair = make_pair(iIndex,Info); //???
mD3D_Info.insert(mD3D_pair); //???
return;
}
D3D_Info List::getData(int iIndex)
{
//Kettenglied mit dem Index zurückgeben
D3D_iterator = mD3D_Info.find(iIndex); //Und hier soll auch ein Fehler sein?
if(D3D_iterator != mD3D_Info.find(iIndex))
{
return (mD3D_Info[iIndex]);
}
else
{
D3D_Info error;
return (error);
}
}
|
Kennt jemand von euch auch diesen Fehler?
error C2664: 'std::_Tree<_Traits>::_Pairib std::_Tree<_Traits>::insert(const std::_Tree<_Traits>::value_type &)': Konvertierung des Parameters 1 von 'std::map<_Kty,_Ty>' in 'const std::_Tree<_Traits>::value_type &' nicht möglich
with
[
_Traits=std::_Tmap_traits<int,D3D_Info,std::less<int>,std::allocator<std::pair<const int,D3D_Info>>,false>
]
and
[
_Kty=int,
_Ty=D3D_Info
]
and
[
_Traits=std::_Tmap_traits<int,D3D_Info,std::less<int>,std::allocator<std::pair<const int,D3D_Info>>,false>
]
error C2679: Binärer Operator '=': Es konnte kein Operator gefunden werden, der einen rechtsseitigen Operator vom Typ 'std::pair<_Ty1,_Ty2>' akzeptiert (oder keine geeignete Konvertierung möglich)
with
[
_Ty1=int,
_Ty2=D3D_Info
]
Wie immer freue ich mich über jede Antwort.
Mfg
Der Dude