tiled map editor и level.h

В этой теме 6 ответов, 4 участника, последнее обновление Бек Бек 8 года/лет назад.

Просмотр 7 сообщений - с 1 по 7 (из 7 всего)
  • Автор
    Сообщения
  • #3418

    Drusha
    Участник
    Сообщений:2

    Зарегистрирован:
    17.03.2016

    Репутация:2

    Есть проект, в котором помимо подключенных библиотек 3 файла: main.cpp, game.h, game.cpp.  Не получается объявить объект Level (из библиотеки level.h) в классе Game (находится в файле game.h). Точнее могу, но если нет файла game.cpp.

    main.cpp

    game.h

    game.cpp

    Если попробовать скопмилировать, выдает:

    Error 24 error LNK1169: one or more multiply defined symbols found

    И еще 9 ошибок приблизительно одинакового содержания:

    Error 23 error LNK2005: “public: bool __thiscall Level::LoadFromFile(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)” (?LoadFromFile@Level@@QAE_NV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) already defined in game.obj

    При этом если удалить файл game.cpp, а в game.h сделать

    То все компилируется. Не могу понять в чем разница и почему в первом случае выдает ошибку. Удалил все с игры, оставил только те строки что указал, вроде уже ничего лишнего, но все равно что-то не так.

    #3419
    +1

    Drusha
    Участник
    Сообщений:2

    Зарегистрирован:
    17.03.2016

    Репутация:2

    Ошибка вышла, в конце код в game.h должен быть таким.

     
    <div id=”crayon-56ea78dada24f147981421-1″ class=”crayon-line”></div>

    #3444
    +1
    RazorNd
    RazorNd
    Участник
    Сообщений:46

    Зарегистрирован:
    04.02.2016

    Репутация:38

    Почитай про include guard

    #3452
    +1

    Drusha
    Участник
    Сообщений:2

    Зарегистрирован:
    17.03.2016

    Репутация:2

    Спасибо за ссылку. Я пробовал <span id=”trestrictions_correct”>pragma once, не помогло, думаю что и include guard не поможет, но попробую ради интереса. Из википедии “То есть, #pragma once применяется для тех же целей, что и include guard, но требует меньше кода и не допускает возможности коллизии имён.”</span>

    А вообще я вышел из этой ситуации скачав подобный файл библиотеки с habrahabr

    #3521
    Бек
    Бек
    Участник
    Сообщений:8

    Зарегистрирован:
    03.04.2016

    Репутация:3

    Я скачал Tiled map editor 0.16 , но в нем нет Xml, незнаете почему?!

    #3523
    Павел Букреев
    Павел Букреев
    Хранитель
    Сообщений:582

    Зарегистрирован:
    04.01.2015

    Репутация:106

    да, я тоже скачал и там нету. видимо они выпилили этот формат из программы. попробуй скачать более старые версии

    #3532
    +1
    Бек
    Бек
    Участник
    Сообщений:8

    Зарегистрирован:
    03.04.2016

    Репутация:3

    Кстати нашел там есть! Сперва надо создать а потом в настроийке карт можно поменять в xml!

Просмотр 7 сообщений - с 1 по 7 (из 7 всего)

Для ответа в этой теме необходимо авторизоваться.