Столкнулся с одной проблемкой.
Есть такой код написанный в VC 7.1
#include <iostream>
#include <vector>
class Temp
{
public:
Temp(int i)
: value_(i)
{
std::cout << "Ctor " << value_ << std::endl;
}
~Temp()
{
std::cout << "Dtor " << value_ << std::endl;
}
int value_;
};
int main(int argc, char* argv[])
{
std::vector<Temp> vec;
Temp one(1);
vec.push_back(one);
Temp two(2);
vec.push_back(two);
return 0;
}
По моим понятиям колличество конструкторов должно соответствовать количеству деструкторов
А получаю:
Ctor 1
Dtor 1
Ctor 2
Dtor 1
Dtor 2
Dtor 2
Dtor 1
Dtor 1
Dtor 2
Обыясните пожалуйста.
Заранее спасибо за ответы.