Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

21

11.01.2009, 14:19

Zitat von »"Coders-Square"«

Woher möchtest du wissen, dass LoadFromFile eine eigene Fehlermeldung generiert? Du hast ja nur den Funktionskopf gesehen. Oder ist das etwa eine Library-Inline-Funktion? oO


Weil ich die Funktion schon zig mal verwendet hab. Daher.

Anonymous

unregistriert

22

11.01.2009, 14:20

Achso, also doch. Nagut, dann gebe ich dir Recht.

K-Bal

Alter Hase

Beiträge: 703

Wohnort: Aachen

Beruf: Student (Elektrotechnik, Technische Informatik)

  • Private Nachricht senden

23

11.01.2009, 14:23

Zitat von »"raXor"«

Du brauchst keine Fehlermeldung schreiben. Die LoadFormFile Funktion macht das automatisch für dich. Du musst nur dafür sorgen das das Programm sauber beendet wird.


Auf welche Weise geschieht das denn, wirft die ne Exception?

24

11.01.2009, 14:32

Hab grad nachgeschaut. Die Funktion sieht folgendermaßen aus:

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
26
27
28
29
30
31
32
33
34
35
////////////////////////////////////////////////////////////

/// Load pixels from an image file

////////////////////////////////////////////////////////////

bool ImageLoader::LoadImageFromFile(const std::string& Filename, std::vector<Color>& Pixels, unsigned int& Width, unsigned int& Height)
{
    // Clear the array (just in case)

    Pixels.clear();

    // Load the image and get a pointer to the pixels in memory

    int ImgWidth, ImgHeight, ImgChannels;
    unsigned char* PixelsPtr = SOIL_load_image(Filename.c_str(), &ImgWidth, &ImgHeight, &ImgChannels, SOIL_LOAD_RGBA);

    if (PixelsPtr)
    {
        // Assign the image properties

        Width  = ImgWidth;
        Height = ImgHeight;

        // Copy the loaded pixels to the pixel buffer

        Pixels.resize(Width * Height);
        memcpy(&Pixels[0], PixelsPtr, Width * Height * 4);

        // Free the loaded pixels (they are now in our own pixel buffer)

        SOIL_free_image_data(PixelsPtr);

        return true;
    }
    else
    {
        // Error, failed to load the image

        std::cerr << "Failed to load image \"" << Filename << "\". Reason : " << SOIL_last_result() << std::endl;

        return false;
    }
}

25

11.01.2009, 14:56

@K-Bal
Das nicht, aber es wird eine Ausgabe in der Konsole gemacht, in der die Fehlermeldung steht.

K-Bal

Alter Hase

Beiträge: 703

Wohnort: Aachen

Beruf: Student (Elektrotechnik, Technische Informatik)

  • Private Nachricht senden

26

11.01.2009, 14:59

Zitat von »"Genion"«

@K-Bal
Das nicht, aber es wird eine Ausgabe in der Konsole gemacht, in der die Fehlermeldung steht.


Jo, sieht man ja in der Implementierung ;)

Werbeanzeige