Ganz eigentümlich:Warum ist Karte <bool,int> m = {{1,2}, {3,4}, {5,0}}; Größe 1 und nicht 3?
map<bool,int> mb={{1,2},{3,4},{5,0}};
cout << mb.size();
map<int,int> mi={{1,2},{3,4},{5,0}};
cout << mi.size();
druckt
ausGanz eigentümlich:Warum ist Karte <bool,int> m = {{1,2}, {3,4}, {5,0}}; Größe 1 und nicht 3?
map<bool,int> mb={{1,2},{3,4},{5,0}};
cout << mb.size();
map<int,int> mi={{1,2},{3,4},{5,0}};
cout << mi.size();
druckt
ausstd::map
ist einzigartig-Schlüssel. 1
, 3
, 5
alle Ausbeute true
bei Umwandlung in bool
.
Nur eine Vermutung, aber Ihre erste Karte hat bool
als Schlüsseltyp, und alle Werte 1, 3 and 5
bewerten zu wahren.
Sie schreiben immer nur den gleichen Eintrag.
Ihre erste Karte hat bool als Schlüssel. Es gibt nur zwei Werte von bool. Sie liefern Eingaben als Eingabe. Nicht-0-Ints sind wahr und 0-Ints sind falsch. Alle deine Schlüssel sind daher wahr. Zwei davon werden vom letzten überschrieben. Deshalb ist die Größe 1.
doh, wird akzeptieren, wenn Timeout vergeht – NoSenseEtAl