从vector <float>切换到vector <short>时出错

我有一个应用程序,我正在做什么,我想改变一个vector,我创build从浮动到短。 我的代码是这样的头文件:

vector<float> vertices; 

它工作正常,但如果我切换到这个:

 vector<short> vertices; 

并编译,它崩溃与以下错误:

 malloc: *** error for object 0x1035804: incorrect checksum for freed object - object was probably modified after being freed. *** set a breakpoint in malloc_error_break to debug 

我不知道发生了什么事。 如果有帮助,这是我为iPad开发的一个OpenGL应用程序。

我仍然不知道为什么我的应用程序不能运行时,我的向量从浮动更改为短,但我通过创build一个新的短裤vector对象,并使用它来解决问题。 没有更多的问题和预期的工作。