좋아요, 저는 C와 Java에서 왔기 때문에 C ++에서 완전히 새로운 것이므로 간단한 질문입니다. Engine.h 라는 다음 헤더가 있습니다 (코드는 C ++로 게임을 만드는 튜토리얼 에서 가져온 것입니다 ).
#ifndef TWITCH_ENGINE
#define TWITCH_ENGINE
#include "GLFW/glfw3.h"
#pragma comment (lib, "opengl32.lib")
class Engine
{
public:
static int SCREEN_WIDTH;
static int SCREEN_HEIGHT;
Engine();
~Engine();
bool initialize(char *windowTitle);
private:
};
#endif
소스 파일 Engine.cpp
#include "Engine.h"
int Engine::SCREEN_WIDTH = 1024;
int Engine::SCREEN_HEIGHT = 768;
Engine::Engine() {
}
Engine::~Engine() {
}
bool Engine::initialize(char* windowTitle);
그래서 질문은 매번 Engine :: member_name 을 써야 using namespace Engine;
합니까? 아니면 이것을 피할 수있는 방법이 있습니까? 그렇다면 그렇게 코딩하면 어떤 이점이 있습니까?
짧은 대답 : 네, 그래야합니다.
긴 대답 : using namespace
네임 스페이스에서만 작동합니다. 여기에 놀랍지 않습니다. 클래스는 네임 스페이스가 아닙니다. 코드를 헤더로 이동하면이 필요성이 사라지지만 C와 동일한 다른 단점이 있으므로 아마 알고있을 것입니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다