Vektor->Aktuelle Iteratornummer!?
-
Ahoi,
std::vector<int> vektor; vektor.push_back( 2 ); vektor.push_back( 3 ); vektor.push_back( 4 ); for( std::vector<int>::iterator i = vektor.begin( ); i != vektor.end( ); ++i ) { std::cout<< *i <<std::endl; }Wie bekomme ich es jetzt hin, dass mir 0, 1, 2 ausgegebn wird und nicht der Wert selber? Ich möchte nämlich wissen, bei welchem Element ich gerade bin.
Danke im vorrrrrraus!
-
Hi,
siehe hier: http://www.cplusplus.com/reference/std/iterator/distance/
-
das es nicht nur mit iteratoren sondern auch mit dem op[] geht, weist du aber?!
-
unskilled schrieb:
das es nicht nur mit iteratoren sondern auch mit dem op[] geht, weist du aber?!
nä, dann schiess mal los mayn klaynes mäuschen!
-
btw:
#include <vector> #include <iostream> #include <iterator> int main( ) { std::vector<int> vektor; vektor.push_back( 2 ); vektor.push_back( 3 ); vektor.push_back( 4 ); for( std::vector<int>::iterator i = vektor.begin( ); i != vektor.end( ); ++i ) { std::vector<int>::iterator first = vektor.begin(); std::vector<int>::iterator last = vektor.end(); std::cout<< distance( first, last ) <<std::endl; } std::cin.get( ); }geht garnisch!
-
vector0r schrieb:
unskilled schrieb:
das es nicht nur mit iteratoren sondern auch mit dem op[] geht, weist du aber?!
nä, dann schiess mal los mayn klaynes mäuschen!
hey, mal nicht so frech zu den hilfsbereiten regs hier, das ist übrigens meine unreg-nickendung!
vector0r schrieb:
Ahoi,
std::vector<int> vektor; vektor.push_back( 2 ); vektor.push_back( 3 ); vektor.push_back( 4 ); for( std::vector<int>::iterator i = vektor.begin( ); i != vektor.end( ); ++i ) { std::cout<< *i <<std::endl; }Wie bekomme ich es jetzt hin, dass mir 0, 1, 2 ausgegebn wird und nicht der Wert selber? Ich möchte nämlich wissen, bei welchem Element ich gerade bin.
Danke im vorrrrrraus!Einfach0r gehts kaum:
for ( i=0; i<vektor.size(); i++ ) cout << vektor.at(i) << " ist auf index " << i << endl; // od0r cout << vektor[i] << endl;
-
#include <iostream> #include <vector> int main() { std::vector<int> vektor; vektor.push_back(2); vektor.push_back(3); vektor.push_back(4); for(std::vector<int>::size_type i = 0; i != vektor.size(); ++i) std::cout << "Element " << i << " hat den Wert " << vektor[i] << std::endl; return 0; }Edit: zu langsam

-
Danke, ihr sayd alle klayne Schätzekäss!