[Irrlicht, C++] error: invalid initialization of reference of type 'const irr::core::dimension2d<unsigned int>&
Ostatnio zmodyfikowano 2013-06-01 12:10
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 extern "C" IRRLICHT_API IrrlichtDevice * IRRCALLCONV createDevice( video::E_DRIVER_TYPE deviceType = video::EDT_SOFTWARE, oraz nadal widzi błąd w pliku main. |
|
megatron |
» 2013-05-25 22:53:02 |
|
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. |
|
megatron |
» 2013-05-27 18:45:39 Zmień kompilator na starszą wersję, ale wcześniej upewnij się czy poprawnie zainstalowałeś silnik. |
|
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=40341Generalnie 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. #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>&)'
|
|
1 « 2 » |