Ich benutze schon längst delete[],
und ich habe es jetzt ans Ende von der Methode gesetzt, und es klappt nicht, wenn ich es ganz weglasse,
gehts auch nícht, bricht auch ab.
Was kann ich denn jetzt tun?
Wo liegt denn der Fehler?
Ich weiß dass ihr mir alle sehr helft, und ich weiß, wie viel Geduld ihr mit mir habt.
Also nach debuggen habe ich wirklich herausfinden können, es liegt an der Zeile 22:
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
void Game::makeBackground()
{
backgroundImage = new sf::Image(WIDTH,HEIGHT);
ColorScale gradient;
gradient.insert(0.0,sf::Color::Black);
gradient.insert(1.0,sf::Color::Blue);
gradient.insert(2.0,sf::Color::Red);
sf::Color* tab = new sf::Color[HEIGHT];
gradient.fillTab(tab,HEIGHT);
for(int i=0;i<WIDTH;i++)
for(int j=0;j<HEIGHT;j++)
backgroundImage->SetPixel(i,j,tab[j]);
for(int i = 0;i<STARS;i++)
{
backgroundImage->SetPixel(sf::Randomizer::Random(1,WIDTH-2),sf::Randomizer::Random(1,HEIGHT-2),sf::Color::White);
}
background = new sf::Sprite(*backgroundImage);
delete[] tab;
}
|