Zacząłem naukę SFML 1.6 z kursu http://cpp0x.pl/kursy/Kurs-SFML-C++/284. Na początku wszystko było dobrze, ale zaczęło się sypać kiedy autor wprowadził sf::RenderWindow. Przepisałem przykładowy kod, skompilowałem, ale po uruchomieniu konkretnie przy linijce while( oknoAplikacji.GetEvent( zdarzenie ) ) wywala błąd :Unhandled exception at 0x100262d9 in SFML.exe: 0xC0000005: Access violation reading location 0x00000002. Wklejam kod:
#include <SFML/Graphics.hpp>
int main()
{
sf::RenderWindow oknoAplikacji( sf::VideoMode( 800, 600, 32 ), "Kurs SFML - http://cpp0x.pl" );
while( oknoAplikacji.IsOpened() )
{
sf::Event zdarzenie;
while( oknoAplikacji.GetEvent( zdarzenie ) )
{
if( zdarzenie.Type == sf::Event::Closed )
oknoAplikacji.Close();
if( zdarzenie.Type == sf::Event::KeyPressed && zdarzenie.Key.Code == sf::Key::Escape )
oknoAplikacji.Close();
if( zdarzenie.Type == sf::Event::MouseButtonPressed && zdarzenie.MouseButton.Button == sf::Mouse::Middle )
oknoAplikacji.Close();
}
oknoAplikacji.Clear( sf::Color( 255, 0, 0 ) );
oknoAplikacji.Display();
}
return 0;
}
Dodam, że używam Microsoft Visual C++ Express 2010, ale identyczny kod tylko z zamianą RenderWindow na Window i usunięciem oknoAplikacji.Clear( sf::Color( 255, 0, 0 ) ); działa poprawnie.