Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[Irrlicht, C++] error: invalid initialization of reference of type 'const irr::core::dimension2d<unsigned int>&

Ostatnio zmodyfikowano 2013-06-01 12:10
Autor Wiadomość
nazgul1313
Temat założony przez niniejszego użytkownika
» 2013-05-25 16:25:13
Zainstalowałem Code::Blocks od nowa, tym razem z oficjalnej strony i teraz otwiera plik Irchlicht.h oraz widzi błąd w tym
C/C++
extern "C" IRRLICHT_API IrrlichtDevice * IRRCALLCONV createDevice(
video::E_DRIVER_TYPE deviceType = video::EDT_SOFTWARE,
oraz nadal widzi błąd w pliku main.
P-83846
megatron
» 2013-05-25 22:53:02
P-83916
nazgul1313
Temat założony przez niniejszego użytkownika
» 2013-05-27 18:09:42
Przy używaniu Ogre mam podobny błąd więc nie wiem już o co chodzi.
P-84098
megatron
» 2013-05-27 18:45:39
Zmień kompilator na starszą wersję, ale wcześniej upewnij się czy poprawnie zainstalowałeś silnik.
P-84102
DejaVu
» 2013-06-01 12:10:38
Nie wkleiłeś błędu kompilacji - nie ma o czym dyskutować...

/edit:
Przywracam temat - nie zauważyłem pierwszej strony :P

/edit2:
http://irrlicht.sourceforge.net/forum/viewtopic.php?t=40341

Generalnie rzecz biorąc Twój problem sprowadza się do tego, że masz dużo nowszą wersję biblioteki Irrlicht niż ta, która była omawiana w kursie. API biblioteki Irrlicht dynamicznie się zmieniało z każdą wydaną wersją, więc kody ze starych tutoriali po prostu nie działają na nowszych wersjach Irrlichta - głównie ze względu na niezgodność typów. To tak jak byś chciał przez referencję przekazać long, oczekując że typ danych będzie short.
C/C++
#include <vector>

void funkcja( const std::vector < long > & a ) { }

int main()
{
    std::vector < short > b;
    funkcja( b );
    return 0;
}

Visual C++:
error C2664: 'funkcja' : cannot convert parameter 1 from 'std::vector<_Ty>' to 'const std::vector<_Ty> &'

Code::Blocks (GCC):
In function 'int main()':
error: invalid initialization of reference of type 'const std::vector<long int>&' from expression of type 'std::vector<short int>'
error: in passing argument 1 of 'void funkcja(const std::vector<long int>&)'
P-84521
1 « 2 »
Poprzednia strona Strona 2 z 2