これは私の最初の投稿なので、うまく聞かれなかったらごめんなさい。
基本的に、動的メモリに問題があります。概念を誤解しているのか、少なくとも1つの機能を誤解しているのかを知りたいです。わかりましたので、メイン プログラム ループ内でサイズを変更する配列を管理する必要がある C++ を使用していますが、メモリを削除しようとするとヒープ エラーが発生し続けます。(以下は、私がやろうとしていることの簡略化されたバージョンです)。
void main(void)
{
//Initialization
//main loop
while(true)
{
int* array;
function(&array);
printf("test %d",array[0]); //basically use the data
delete [] array;
}
}
//in separate file
void function(**int val)
{
*val=new int[size of array] // i pass the size of the array...
//to the function as well
//fill the array with data
return;
}
この後、データを読み取ることができるので、ポインター「配列」にアタッチする必要がありますが、データが既に削除されているかのように削除できないのはなぜですか?
アドバイスをいただければ幸いです。