私は自分自身にC++を教えてくれていて、誰かがC++にガベージコレクターがないと言ってくれました。今私はこれがどれほど意味するかは分かりません。C++メモリーgarbaging
double multiply (double a, double b) {
double result = a * b;
return result;
};
int main (char* args[]) {
double num1 = 3;
double num2 = 12;
double result = multiply(num1, num2);
return 0;
}
乗算方法は、内部変数「結果」が含まれています
は、私はこのコードを持っているとしましょう。変数 "result"のメモリアドレスはまだ割り当てられているかロックされていますか?そして、パラメータ "a"はどのように& "b"?
あなたは良いC++の初心者の本を入手し、それを読む必要があります。ガベージコレクションは、ヒープ上で作成されたもの(C++で 'new'を使用)と関係しています。あなたの例の中のすべてがスタックにあります。あなたが包囲関数を離れると、それは存在しなくなります。 –
C++では、 'main'は' int main() 'のように' int main(int argc、char * argv []) 'または' none 'のような2つの引数をとります。 –
¤C++には*標準の*ガベージコレクタが1つありません。しかし、 [Boehmコレクター](http://en.wikipedia.org/wiki/Boehm_collector)。しかし、それはあなたがしていることを本当に知ることからあなたを救うものではありません。サンプルプログラムには動的割り当てがないため、ガベージコレクションは不要です。乾杯&乾杯。 –