Strange behaviour

I

Ioannis Vranos

The code:

#include <iostream>
#include <ctime>
#include <vector>
#include <cstddef>


struct SomeClass
{
typedef std::vector<int> TypeVector;

TypeVector vec;

enum { VectorSize= 10 };

public:

SomeClass();
};



SomeClass::SomeClass():vec(VectorSize)
{
using namespace std;

srand(0);

for(TypeVector::size_type i= 0; i< vec.size(); ++i)
{
vec= rand();

cout<<vec<<"\t";
}

cout<<"\n\n";
}



int main()
{
using namespace std;

const size_t SIZE=10;

typedef vector<SomeClass> Vector;

cout<< "\nCreating vector with "<< SIZE<< " SomeClass objects..."<<
endl;
Vector vec(SIZE);

}



in my system produces:

john@john-desktop:~/Projects/Other/anjuta1/src$ ./foobar_cpp

Creating vector with 10 SomeClass objects...
1804289383 846930886 1681692777 1714636915
1957747793 424238335 719885386 1649760492
596516649 1189641421

john@john-desktop:~/Projects/Other/anjuta1/src$


(10 values) instead of 100 values. Is it a compiler defect, or am I
missing something?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,744
Messages
2,569,483
Members
44,902
Latest member
Elena68X5

Latest Threads

Top