#include void function2(std::map &temp_map); //forward declaration void function1(){ std::map my_map; //automatic variable //no need to make it pointer! function2(my_map); } void function2(std::map &temp_map){ //do stuff with the map }