PDA

View Full Version : C++ passaggio var alla classe e nella sua routine??


okay
27-01-2004, 15:48
dunque:

per vc6 c++ grazie...........

Quello che devo fare è il toggleFulscreen, cioè il passaggio da finestra a schermoin fullscreen e viceversa, al tocco del tasto F1.

nel file Dati_Global.h ho messo
bool g_bFullscreen;

dal main includo Dati_Global e creo una finestra con richiesta
se decido per il si g_bFullscreen = true, no g_bFullscreen = false
chiaramente ho anche messo: g_pGame = new CGame(); //nel main
una volta registrata la classe della finestra ecc, ecc., passo g_bFullscreen così:
if(g_pGame->Initialise(hWnd, hInst, mWidth, mHeight, g_bFullscreen))

in Game.cpp ho:
m_Fscreen = NULL;
e in Game.h ho:
bool m_Fscreen;


......fino a quì tutto ok nel senso che m_Fscreen è visibile in tutte le routine a cui viene passata

Il problema è che in questa routine, dove appunto devo fare il ToggleFullscreen, m_Fscreen vale sempre 0

come posso fare per farla vedere anche in questa routine?
eccola:

HRESULT CGame::ToggleFullScreen()
{
//con il tasto F1 richiamo questa routine ma m_Fscreen è sempre 0
LogInfo("<li>m_Fscreen %d.", m_Fscreen);
return S_OK;

.....
questo è il prototipo in CGame.h
HRESULT ToggleFullScreen();

.....mha!!!!!!

pela
27-01-2004, 17:58
le variabili globali non le devi definire nel file .h ma in un file .cpp, poi in tutti gli altri file .cpp che le usano metti
extern bool m_Fscreen;