Loop icinde pointer kullanirken dikkat etmek gerek

3 Feb
2014

Pointer i eger asagidaki gibi loop bittikten sonra sileyim derseniz cok fena yanilirsiniz. Memory siser, siser, siser. Eger GDI object ise cok beklemenize de gerek kalmaz 🙂

Yanlis
  1. Brush* brush;
  2. for (int i = 0; i < 100; i++)
  3. {
  4.      brush = new Brush(Color.Red, 1.0f);
  5. }
  6. delete brush;

Dogrusu pointer i her kullanimdan sonra, loop icinde, silmektir.

Dogru
  1. Brush* brush;
  2. for (int i = 0; i < 100; i++)
  3. {
  4.     brush = new Brush(Color.Red, 1.0f);
  5.     delete brush;
  6. }
Be Sociable, Share!

Comment Form

top