C ++: “vector <int> :: variable size_type”: ¿cuál es el punto de declarar de esta manera?
Creo que esta es una pregunta muy básica, pero no pude resolverlo.
Estaba acostumbrado a usar matrices en C ++ pero ahora estoy empezando a aprender vectores. Estaba haciendo un código de prueba y me encontré con una pregunta.
En primer lugar, aquí está el código que hice:
#include <iostream>
#include <vector>
#include <numeric>
using namespace std;
int main(){
vector<double> score(10);
for(vector<double>::size_type i=0;i<20;i++) {
cout<<"Enter marks for student #"<<i+1<<":"<<flush;
cin>>score[i];
}
double total = accumulate(score.begin(), score.end(),0);
cout<<"Total score:"<<total<<endl<<"Average score:"<<total/score.size()<<flush;
return 0;
}
En elfor
oración en la línea # 9, estoy declarandoi
como unvector<double>::size_type
tipo (porque me dijeron que lo hiciera). Probé el código con el tipo mencionado anteriormente reemplazado por unint
, y funcionó perfectamente bien. Por que esvector<double>::size_type
preferido comparado conint
?