完成基本的功能