Unresolved external symbol

Odpowiedz Nowy wątek
2019-08-04 11:35

Rejestracja: 3 lata temu

Ostatnio: 1 miesiąc temu

0

Witam. Mam taki o to kod:

#include <iostream>
#include <SFML/Graphics.hpp>

//#include "klasy.h"

struct zmienne_scen {

    int odliczanie_do_odliczania;
    bool zaladowane_tekstury;

};

//40:31

extern zmienne_scen zmienne_funkcji[2];

static void loadTextures_function(int id) {

    if (zmienne_funkcji[id].zaladowane_tekstury == false) {

        zmienne_funkcji[id].odliczanie_do_odliczania = 1000;

        //Load textures...

        zmienne_funkcji[id].zaladowane_tekstury = true;

    }

}

static void scena_functions(std::string scena_nr, sf::RenderWindow& okno, int id) {

    std::cout << "Hello" << std::endl;

    if (scena_nr == "DragRaceTime") {

        if (zmienne_funkcji[id].odliczanie_do_odliczania > 0) {
            //zmienne_funkcji[id].odliczanie_do_odliczania--;
        }
        else {

            //textures[id].displayTexture(okno, 0, 0);

        }

    }

};

I wywala mi takie błędy:
https://imgur.com/a/KhNbbun

Pozostało 580 znaków

kq
2019-08-04 11:40
kq
Moderator C/C++

Rejestracja: 7 lat temu

Ostatnio: 4 minuty temu

Lokalizacja: Szczecin

0

nie linkujesz pliku z definicją extern zmienne_scen zmienne_funkcji[2];


Pozostało 580 znaków

2019-08-04 12:46

Rejestracja: 3 lata temu

Ostatnio: 1 miesiąc temu

0

W ustawieniach linkera trzeba plik dodać?

Pozostało 580 znaków

2019-08-04 19:50

Rejestracja: 3 lata temu

Ostatnio: 28 minut temu

0

W projekcie musisz te pliki miec

Pozostało 580 znaków

2019-08-04 22:16

Rejestracja: 3 lata temu

Ostatnio: 1 miesiąc temu

0

Miałem dodane https://imgur.com/a/i8j9IQw

Pozostało 580 znaków

2019-08-04 22:20

Rejestracja: 3 lata temu

Ostatnio: 28 minut temu

0

A to nie ma byc w source files? ;)

Pozostało 580 znaków

2019-08-04 22:23

Rejestracja: 3 lata temu

Ostatnio: 1 miesiąc temu

0

A to jest jakaś różnica? Te wszystkie pliki są w tej samej scieżce.

No to jest roznica. Chyba ze to tylko wirtualna etykietka ale wyglada mi na drzewo katalogow - stivens 2019-08-04 22:31

Pozostało 580 znaków

2019-08-04 22:44

Rejestracja: 3 lata temu

Ostatnio: 1 miesiąc temu

0

Przerzuciłem ten plik do Source Files i bład nadal jest

Pozostało 580 znaków

kq
2019-08-06 07:34
kq
Moderator C/C++

Rejestracja: 7 lat temu

Ostatnio: 4 minuty temu

Lokalizacja: Szczecin

1

Nie rozumiesz różnicy między definicją a deklaracją. extern zmienne_scen zmienne_funkcji[2]; mówi tylko (deklaruje), że gdzieś takie coś jest (zdefiniowane). Ale musisz tę definicję gdzieś mieć (bez extern) - w jakimś pliku .cpp (konkretniej: ma być w jednym TU)


Pozostało 580 znaków

2019-08-06 13:56

Rejestracja: 5 lat temu

Ostatnio: 3 godziny temu

Lokalizacja: Łódź

1

Jak napisali powyżej, w jakimś pliku cpp musisz mieć:

zmienne_scen zmienne_funkcji[2];

Ale ogólnie, najlepiej jakbyś zmiennych globalnych nie uzywał... Bo jak widzisz już na tak wczesnym etapie tworza się problemy, a dalej będzie bardziej pod górkę...


Ogólnie na prace domowe mam stawki zaporowe. Czasem coś o programowaniu znajdzie się na mojej stronie

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0