void test_00 () { // Show the user we are running test 00 std::cout << "Running test_00..." << std::endl << std::endl; // Make the universe Universe universe; // Open a new scope when creating objects, see below why Object* A; Object* B; { // Generate a few objects A = new Object; B = new Object; // Give them new positions A->set_position(1, 1); B->set_position(-1, 2); // Add the objects to the universe universe.add_object(A); universe.add_object(B); } // Show a few things about the world we just created debug_display_world(universe); std::cout << "\nUpdating the positions\n"; // So to update the position you have to do this A->set_position(2, 2); A->set_velocity(3, 1); B->set_position(-2, -2); B->set_velocity(-1, -2); // Display the world to the commandline debug_display_world(universe); // Now let's try to remove an object std::cout << "\n Removing A" << std::endl; debug_display_world(universe); // Now create a new object std::cout << "\n Adding another object C " << std::endl; Object* C; { C = new Object; C->set_position(0.5, 0.5); universe.add_object(C); } // And show the mapping and world debug_display_world(universe); std::cout << "\n Removing B" << std::endl; universe.remove_object(B); debug_display_world(universe); }