1 #include "memory_backtrack.hpp" 2 #include <assert.h> 3 main(void)4int main(void) 5 { 6 MemoryBacktracker mb; 7 RevertingStack<int> i = mb.makeRevertingStack<int>(); 8 9 assert(i.get().size() == 0); 10 11 i.push_back(1); 12 assert(i.get().size() == 1); 13 mb.pushWorld(); 14 assert(i.get().size() == 1); 15 i.push_back(2); 16 assert(i.get().size() == 2); 17 assert(i.get()[1] == 1); 18 assert(i.get()[2] == 2); 19 mb.popWorld(); 20 assert(i.get().size() == 1); 21 assert(i.get()[1] == 1); 22 } 23