2010-09-16 1 views
6

Il std::vector seguente codice sta dando erroriconst e STL contenitori

int main() 
{ 
    std::vector<const double> VectDouble; 
    VectDouble.push_back(2.34); 
    VectDouble.push_back(2.33); 
    VectDouble.push_back(2.32); 

    for(std::vector<const double> VectDouble::iterator i=VectDouble.begin();i!=VectDouble.end();++i) 
     std::cout<<*i; 

} 

risposta

13

I suoi elementi contenitori STL deve essere cedibile e copia-costruibile.

const impedisce di essere assignable. Rimuovi const e prova a compilare nuovamente il codice.

cambiarne anche std::vector<double> VectDouble::iterator a

std::vector<double>::iterator

2

VectDouble è un nome di variabile.

cambiamento

for(std::vector<const double> VectDouble::iterator i=VectDouble.begin();i!=VectDouble.end();++i) 

a

for(std::vector<const double>::iterator i=VectDouble.begin();i!=VectDouble.end();++i) 

o

typedef std::vector<const double> vector_t; 
for(vector_t::iterator i=VectDouble.begin();i!=VectDouble.end();++i)