#include <iostream>
#include <string>
#include <new>

struct Example_Class
{
    char c_style_array[20];
    int number;
    std::string normal_string;
    Example_Class()
    : number(7)
    , normal_string("Hello, placement new!")
    {
    }
};

int main()
{
    unsigned char my_buffer[sizeof(Example_Class)];
    Example_Class *p = new (my_buffer) Example_Class;
    std::cout << p->number << std::endl;
    std::cout << p->normal_string << std::endl;
    p->~Example_Class();
}