0

_alloca の動作は、関数を終了するときにメモリをスタックから解放することであることを知っています。メモリを早く解放する方法はありますか?

4

2 に答える 2

2

いいえ。とにかく使用する意味はありません_alloca.ヒープからより速く割り当ておよび解放でき、サイズ制限が少ない高速プールメモリアロケータを作成できます。

于 2012-09-26T10:39:59.320 に答える
1

いいえありません(asmブロックなどでスタックを明示的にいじることを除く)が、そのようなものが必要な場合は_mallocaandを使用できます。_freea

編集:BoBTFishのメモのように:If it was allocated on the stack, _freea does nothingしたがって、この回答はメモリを以前に解放することに関して正しくありません。_allocaただし、ある程度安全な代替手段を示しているため、削除しない方がよいと思います。

于 2012-09-26T10:30:57.173 に答える