What will be the output of the following C++ code?
#include <iostream>
#include <vector>
using namespace std;
int main ()
{
vector<int> myvector;
int * p;
unsigned int i;
p = myvector.get_allocator().allocate(5);
for (i = 0; i < 5; i++)
myvector.get_allocator().construct(&p[i], i);
for (i = 0; i < 5; i++)
cout << ' ' << p[i];
for (i = 0; i < 5; i++)
myvector.get_allocator().destroy(&p[i]);
myvector.get_allocator().deallocate(p, 5);
return 0;
}
#include <iostream>
#include <vector>
using namespace std;
int main ()
{
vector<int> myvector;
int * p;
unsigned int i;
p = myvector.get_allocator().allocate(5);
for (i = 0; i < 5; i++)
myvector.get_allocator().construct(&p[i], i);
for (i = 0; i < 5; i++)
cout << ' ' << p[i];
for (i = 0; i < 5; i++)
myvector.get_allocator().destroy(&p[i]);
myvector.get_allocator().deallocate(p, 5);
return 0;
}A. 1 2 3 4 5
B. 0 1 2 3 4
C. 1 2 3 4
D. 5 4 3 2 1
Answer: Option B

Join The Discussion