Çözüldü GCC Derleme Hatası

  • Konuyu açan Konuyu açan nebisenol
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 2
  • Gösterim Gösterim 539
Bu konu çözüme ulaştırılmıştır. Çözüm için konuya yazılan tüm yorumları okumayı unutmayın. Eğer konudaki yorumlar sorununuzu çözmediyse yeni bir konu açabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

nebisenol

Geliştirici
Geliştirici
Yardımsever Üye
MT Üye
Mesaj
605
Çözümler
31
Beğeni
228
Puan
629
Ticaret Puanı
0
Merhaba,

arena.cpp:
Genişlet Daralt Kopyala
arena.cpp:83:89: error: ISO C++ forbids comparison between pointer and integer [-fpermissive]
   83 |                 if ((CArena*)(*iter)->CheckArea(startA_X, startA_Y, startB_X, startB_Y) == false)
      |                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
gmake: *** [Makefile:115: OBJDIR/arena.o] Error 1
şöyle bir hata alıyorum.
İlgili kod blogu:
Kod:
Genişlet Daralt Kopyala
if ((CArena*)(*iter)->CheckArea(startA_X, startA_Y, startB_X, startB_Y) == false)
Nasıl çözebilirim?
 
Çözüm
C++:
Genişlet Daralt Kopyala
bool CArenaMap::AddArena(DWORD mapIdx, WORD startA_X, WORD startA_Y, WORD startB_X, WORD startB_Y)
{
    itertype(m_listArena) iter = m_listArena.begin();
    for (; iter != m_listArena.end(); iter++)
    {
        if ((*iter)->CheckArea(startA_X, startA_Y, startB_X, startB_Y) == false)
        {
            sys_log(0, "CArenaMap::AddArena - Same Start Position set. stA(%d, %d) stB(%d, %d)", startA_X, startA_Y, startB_X, startB_Y);
            return false;
        }
    }

    m_dwMapIndex = mapIdx;

    CArena* pArena = M2_NEW CArena(startA_X, startA_Y, startB_X, startB_Y);
    m_listArena.push_back(pArena);

    return true;
}
C++:
Genişlet Daralt Kopyala
bool CArenaMap::AddArena(DWORD mapIdx, WORD startA_X, WORD startA_Y, WORD startB_X, WORD startB_Y)
{
    itertype(m_listArena) iter = m_listArena.begin();
    for (; iter != m_listArena.end(); iter++)
    {
        if ((*iter)->CheckArea(startA_X, startA_Y, startB_X, startB_Y) == false)
        {
            sys_log(0, "CArenaMap::AddArena - Same Start Position set. stA(%d, %d) stB(%d, %d)", startA_X, startA_Y, startB_X, startB_Y);
            return false;
        }
    }

    m_dwMapIndex = mapIdx;

    CArena* pArena = M2_NEW CArena(startA_X, startA_Y, startB_X, startB_Y);
    m_listArena.push_back(pArena);

    return true;
}
 
Çözüm
C++:
Genişlet Daralt Kopyala
bool CArenaMap::AddArena(DWORD mapIdx, WORD startA_X, WORD startA_Y, WORD startB_X, WORD startB_Y)
{
    itertype(m_listArena) iter = m_listArena.begin();
    for (; iter != m_listArena.end(); iter++)
    {
        if ((*iter)->CheckArea(startA_X, startA_Y, startB_X, startB_Y) == false)
        {
            sys_log(0, "CArenaMap::AddArena - Same Start Position set. stA(%d, %d) stB(%d, %d)", startA_X, startA_Y, startB_X, startB_Y);
            return false;
        }
    }

    m_dwMapIndex = mapIdx;

    CArena* pArena = M2_NEW CArena(startA_X, startA_Y, startB_X, startB_Y);
    m_listArena.push_back(pArena);

    return true;
}
Teşekkürler.
 
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Geri
Üst