solve the problem that size_t doesn't work in higher version of g++