Why constructor is called only once?

Viewed 2293

Consider the below program:

class A
{
    public:
    A(int i)
    {
            cout<<"Called"<<endl;
    }
};

int main()
{
    vector<A> v(5,A(1));
    return 0;
}       

I am getting the output: http://ideone.com/81XO6

 Called

Why the constructor gets called only once even if we are constructing 5 objects?
How vector is internally handled by the compiler?

2 Answers
Related