Unresolved external symbol

Odpowiedz Nowy wątek
2019-08-04 11:35
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

2019-08-04 11:40
kq
0

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


Pozostało 580 znaków

2019-08-04 12:46
0

W ustawieniach linkera trzeba plik dodać?

Pozostało 580 znaków

2019-08-04 19:50
0

W projekcie musisz te pliki miec


01010100 01110101 01110100 01100001 01101010 00100000 01101110 01101001 01100101 00100000 01101101 01100001 00100000 01101110 01101001 01100011 00100000 01100011 01101001 01100101 01101011 01100001 01110111 01100101 01100111 01101111 00101110 00100000 01001001 01100011 00100000 01110011 01110100 01101111 01101110 01110100 00101110

Pozostało 580 znaków

2019-08-04 22:16
0

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

Pozostało 580 znaków

2019-08-04 22:20
0

A to nie ma byc w source files? ;)


01010100 01110101 01110100 01100001 01101010 00100000 01101110 01101001 01100101 00100000 01101101 01100001 00100000 01101110 01101001 01100011 00100000 01100011 01101001 01100101 01101011 01100001 01110111 01100101 01100111 01101111 00101110 00100000 01001001 01100011 00100000 01110011 01110100 01101111 01101110 01110100 00101110

Pozostało 580 znaków

2019-08-04 22:23
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
0

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

Pozostało 580 znaków

2019-08-06 07:34
kq
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
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
Liczba odpowiedzi na stronę

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