Construct Sensor Packet Placement

#include <iostream>
#include <cstdint>
#include <new>
#include <type_traits>
using namespace std;

// Write your struct and placement new logic here
struct SensorPacket {
    int id;
    int value;
};

int main() {
    int index, id, value;
    cin >> index >> id >> value;

    // Write your pool construction code here
    using Storage = std::aligned_storage_t<sizeof(SensorPacket), alignof(SensorPacket)>;
    Storage pool[3];

    SensorPacket *ptr = new(&pool[index]) SensorPacket{id, value};
    cout << ptr->id << " " << ptr->value;

    ptr->~SensorPacket();

    return 0;
}
Upvote
Downvote
Loading...

Input

1 50 900

Expected Output

50 900