Использование :: каждый раз в C ++ - PullRequest
0 голосов
/ 07 июня 2018

Хорошо, так что я совершенно новый в C ++, так как я пришел из C и Java, поэтому простой вопрос.У меня есть следующий заголовок с именем 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;?И если да, то каковы преимущества такого кодирования?

1 Ответ

0 голосов
/ 07 июня 2018

Краткий ответ: Да, вам нужно.

Длинный ответ: using namespace работает только с пространствами имен.Здесь нет ничего удивительного.Класс не является пространством имен.Если вы переместите код в заголовок, эта необходимость отпадет, но у нее есть и другие недостатки, такие же, как в C, так что вы, вероятно, знаете их.

...