Reinitialize Object In-Place

#include <iostream>
#include <cstdint>
#include <new>

using namespace std;

struct Mode {
    int level;
};

int main(){
    alignas(Mode) unsigned char buffer[sizeof(Mode)];


// Write your struct and placement new logic here
    int firstLevel, secondLevel;
    cin >> firstLevel >> secondLevel;

    Mode* m = new (buffer) Mode{firstLevel};

    m->~Mode();

    m=new (buffer) Mode{secondLevel};

    cout<<m->level;

    m->~Mode();
    // Write your in-place reinitialization logic here

    return 0;
}

Solving Approach

 

 

 

 

 

 

Upvote
Downvote
Loading...

Input

3 9

Expected Output

9