- 締切済み
メモリを開放する場合。
リスト構造の1つのセルを削除し、 そのメモリ領域を削除するときに、 64 free(p->value); エラー E2342 a.c 64: パラメータ '__block' は void * 型として定義されているのでint は渡せない(関数 delete ) とでます。 このエラーはどういう意味なのでしょうか? アドバイスや解決方法おまちしてます。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- g_vikke
- ベストアンサー率16% (15/90)
回答No.2
そのままの意味だと思いますが。 valueの宣言部分くらい書きましょうよ。一応pも。 あと、freeのプロトタイプも念のため。 何かpを渡すように見えるけど。。。 メモリ確保した時と同じ要領だと思います。
- 麻野 なぎ(@AsanoNagi)
- ベストアンサー率45% (763/1670)
回答No.1
その通りの意味です……では、身も蓋もないので。 おそらくやるべきことは、 free(p); ですね。 リストの個々の要素ではなくて、ひとつのセル全体を開放することになります。そのあたりは、「リスト構造」をよく勉強してみるしかないです。