[英]Accessing a variable outside a class
我在main.cpp
文件中有一個這樣的變量:
SDL_Renderer* gRenderer = NULL;
我有一個單獨的文件( .h
和.cpp
文件)中的類。 在.cpp
文件中,我想像這樣訪問gRenderer
:
newTexture = SDL_CreateTextureFromSurface( gRenderer, loadedSurface );
我曾嘗試將SDL_Renderer
放在類中,但是當我編譯它時,只給我一個警告,提示它未使用,並且當我運行程序時,我從SDL_GetError()得到一條消息:
“無法從colors.png創建紋理!SDL錯誤:無效的渲染器”
如何在單獨文件中的類中執行此操作?
為了訪問它,其文件必須包含在將要使用的文件中。 因此,應將變量聲明移到頭文件(如main.h
)中,並將其包含在main.ccp
並將在文件中使用它。
但是,為此,您應該在頭文件中將其聲明為extern ,並在main.cpp
中將其聲明為正常定義:
main.h
extern SDL_Renderer* gRenderer;
main.cpp
SDL_Renderer* gRenderer = NULL;
這樣,就可以定義該變量,並且可以在多個文件中正常使用該變量,並保留其值。
如果您想了解更多信息: 如何使用extern在源文件之間共享變量?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.