problem - Jeden string w dwóch klasach

0

Witam.

Mam pewien problem, mianowicie nie wiem jak zrobić by dany string był widziany w obu klasach.
w klasie Form6.h przekazuje tekst labela do stringa:

String^ napis;
napis = label1->Text;

a następnie w klasie OpenGL.h chę sprawdzić tego stringa i w zależnosci od niego nałożyć daną teksturę:

if(napis =="")
{
// nakladanie tekstury
}

Jak zrobić by dany string(napis) był widoczny w klasie OpenGL.h ? Proszę o pomoc.
Pozdrawiam

0

Wskaźnik, albo referencję przekaż do innej klasy. Poczytaj o używaniu wskaźników i referencji. Ewentualnie publiczna metoda getTexture() zwracająca int/string tekstury.

Do takich zadań lepiej użyć liczb i stałych: przypisanie tekstury robisz co klatkę, a przy takim sposobie co klatkę porównujesz stringi, co jest znacznie wolniejsze od porównywania intów.

0

Mógłbym prosić o jakiś przykład?

0

Chodzi o C++/CLI ?

0

zrób klasę pomocnicza:

class klasaMajacaTenString
{
public:
//konstruktory i destruktor
static std::string getString(){return tenString;}
private:
static std::string ;
};

enjoy

0

zmiennych nie deklaruje się w plikach .h. wszystkie zmienne deklaruj w plikach .cpp, a jeśli chcesz żeby była ta zmienna widoczna na zewnątrz to skopiuj definicje zmiennej do pliku .h (bez inicjalizacji) i dodaj przed nią słowo kluczowe extern.

np.:

plik.cpp:

int dupa=6;
int dupa2;

plik.h:

extern int dupa;
extern int dupa2;

plik2.cpp:

#include <plik.h>
//operacje na dupa1,dupa2

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