Wie überprüfe ich, ob ein Index in einem Vektor bereits verwendet wird?
Ich möchte etwas wie folgt aus:Wie überprüft man, ob ein Index in einem Vektor bereits verwendet wird?
if(isUsed(vector,index))
do something
else
do something else
Beispiel:
std::vector<int> myVector;
myVector[0] = 5;
myVector[2] = 0;
myVector[3] = 1;
myVector.erase(3);
isUsed(myVector,3) = false
isUsed(myVector,1) = false
isUsed(myVector,2) = true
isUsed(myVector,5) = false
isUsed(myVector,0) = true
oder:
std::map<int,std::string> myMap;
myMap[1] = "x";
myMap.count(1) > 0 = true
myMap.count(0) > 0 = false
ich diese Funktion wollen schnell sein, weil im mit viel Indizes arbeiten.
Verwenden 'boost :: optional' –
Wie definieren Sie„verwendet“? Alle gültigen Indizes ('0' bis' size (-1)) haben gültige Elemente. – juanchopanza
Sind Sie sicher, dass 'vector' die richtige Datenstruktur ist, wenn Sie dies tun müssen? – Barmar