как объявить и определить глобальные переменные, чтобы правильно обращаться к ним из всех заголовков/исходных файлов

Ну, я изучаю C++ и так и не научился делать вещи, которые не являются OO. Я пытаюсь получить немного больше опыта кодирования в стиле C.

GobalInformation.h

#pragma once

#ifndef GLOBALINFORMATION_H
#define GLOBALINFORMATION_H

#include "MapInformation.h"

namespace gi {
    MapInformation mapInf;
};

#endif

Я хотел бы иметь возможность обращаться к gi::mapInf из каждого заголовка и cpp в моем проекте. Сейчас я включаю globalinformation.h в каждый заголовок, поэтому получаю ошибки компоновщика при множественных определениях.

Как я могу обойти эту проблему?

16
задан xcrypt 29 November 2011 в 20:43
поделиться