Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <cassert>
- #include <cstring>
- #include <new>
- int main()
- {
- alignas(int) unsigned char buff1[sizeof(int)];
- alignas(int) unsigned char buff2[sizeof(int)];
- new (buff1) int {42};
- std::memcpy(buff2, buff1, sizeof(buff1));
- assert(*std::launder(reinterpret_cast<int*>(buff2)) == 42); // is it ok?
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement