folder Tahribat.com Forumları
linefolder C - C++
linefolder C++ Vector.Push_Back Çalışma Anı Hatası



C++ Vector.Push_Back Çalışma Anı Hatası

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Waze
    Waze's avatar
    Kayıt Tarihi: 01/Ekim/2012
    Erkek

    Aşağıdaki gibi kodum var:

     

    std::vector <Entity*> entities; (header dosyasında)
    
    Sprite* sprite = new Sprite(interfaceManager->GetRenderer(), "data/merhaba.bmp");
    Entity* entity = new Entity(10, 10, 48, 48);
    entity->SetSprite(sprite);
    
    entities.push_back(entity);

    Derleme yaparken hata yok ama kod çalışınca aşağıdaki hatayı veriyor:

    main: malloc.c:2372: sysmalloc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 *(sizeof(size_t))) - 1)) & ~((2 *(sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long) old_end & pagemask) == 0)' failed.
    Aborted (core dumped)

    Nerede hata yapıyorum?

    Waze tarafından 16/Kas/15 20:46 tarihinde düzenlenmiştir
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    NmC
    NmC's avatar
    Kayıt Tarihi: 23/Kasım/2008
    Erkek

    http://stackoverflow.com/questions/2987207/why-do-i-get-a-c-malloc-assertion-failure

    Benzer bir hata. Pointer ile elleşmemen gereken bir yere müdahale ediyorsun diyorlar. Bi clean build yapmayı dener misin?


    There are 10 types of people in the world. Those who knows binary and those who dont...
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Waze
    Waze's avatar
    Kayıt Tarihi: 01/Ekim/2012
    Erkek
    NmC bunu yazdı

    http://stackoverflow.com/questions/2987207/why-do-i-get-a-c-malloc-assertion-failure

    Benzer bir hata. Pointer ile elleşmemen gereken bir yere müdahale ediyorsun diyorlar. Bi clean build yapmayı dener misin?

    Evet google'da denk geldim bu soruya da adamın koduyla benimkinin alakası olmadığı için pek kurcalamadım. Clean build derken hocam, C++ da daha çok yeniyim nasıl yapılır o?

    Edit: .o dosyalarını silip tekrar derliyorum hocam sanırım buymuş clean build doğru mu?

    2. Edit: Vay be, Entity.h 'yi include etmeyi unutmuşum. Bende çok komplike birşey bekliyordum. Bundan sonra hep clean build yapacağım. :P

    Teşekkürler hocam.

    Waze tarafından 16/Kas/15 21:10 tarihinde düzenlenmiştir
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    NmC
    NmC's avatar
    Kayıt Tarihi: 23/Kasım/2008
    Erkek
    Waze bunu yazdı
    NmC bunu yazdı

    http://stackoverflow.com/questions/2987207/why-do-i-get-a-c-malloc-assertion-failure

    Benzer bir hata. Pointer ile elleşmemen gereken bir yere müdahale ediyorsun diyorlar. Bi clean build yapmayı dener misin?

    Evet google'da denk geldim bu soruya da adamın koduyla benimkinin alakası olmadığı için pek kurcalamadım. Clean build derken hocam, C++ da daha çok yeniyim nasıl yapılır o?

    Edit: .o dosyalarını silip tekrar derliyorum hocam sanırım buymuş clean build doğru mu?

    Evet hocam :) Konsoldan mı çalışıyorsun? Eğer ödev işi falan değilse bence düzgün bi editör kullan. Linux için CodeBlocks windowstaysan Visual Studio gibi. Debug yaparken rahat edersin.


    There are 10 types of people in the world. Those who knows binary and those who dont...
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Waze
    Waze's avatar
    Kayıt Tarihi: 01/Ekim/2012
    Erkek
    NmC bunu yazdı
    Waze bunu yazdı
    NmC bunu yazdı

    http://stackoverflow.com/questions/2987207/why-do-i-get-a-c-malloc-assertion-failure

    Benzer bir hata. Pointer ile elleşmemen gereken bir yere müdahale ediyorsun diyorlar. Bi clean build yapmayı dener misin?

    Evet google'da denk geldim bu soruya da adamın koduyla benimkinin alakası olmadığı için pek kurcalamadım. Clean build derken hocam, C++ da daha çok yeniyim nasıl yapılır o?

    Edit: .o dosyalarını silip tekrar derliyorum hocam sanırım buymuş clean build doğru mu?

    Evet hocam :) Konsoldan mı çalışıyorsun? Eğer ödev işi falan değilse bence düzgün bi editör kullan. Linux için CodeBlocks windowstaysan Visual Studio gibi. Debug yaparken rahat edersin.

    IDE kullanmayı sevmiyorum hocam, özellikle de öğrenme aşamasındayken. :D
    İkinci edit'te yazdım yukarıda, hata çok basit birşeymiş clean yapınca düzeldi. Tekrar teşekkürler. :)

Toplam Hit: 1744 Toplam Mesaj: 5
c++ programlama vector