add function.cpp and movector.cpp