簡體   English   中英

在類外訪問變量

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM