使用泛型的增强版堆栈