Невозможно собрать программу Allegro C ++ в Visual Studio 2010 - PullRequest
0 голосов
/ 11 октября 2018

Я полный новичок в allegro, и я только что правильно установил allegro, и это мой код (мой первый код):

#include<allegro5/allegro.h>
#include<allegro5\allegro_font.h>
#include<allegro5/allegro_native_dialog.h>
#include<allegro5\allegro_ttf.h>
#include<iostream>
int main()
{
    ALLEGRO_DISPLAY *display;
    if (!al_init())
    {
        al_show_native_message_box(display,
                                   NULL,
                                   NULL,
                                   "Could not initialize allegro 5",
                                   NULL,
                                   NULL);
    }
    display = al_create_display(800, 600);
    if (!display)
    {
        al_show_native_message_box(display,
                                   NULL,
                                   NULL,
                                   "Could not initialize allegro WINDOW ",
                                   NULL,
                                   NULL);
    }
    al_rest(5.0);
    al_destroy_display(display);
    return 0;
}

Теперь вот что показывает журнал сборки:

1>------ Build started: Project: Allegro_intro, Configuration: Debug Win32 ------
1>  main.cpp
1>c:\users\krish\desktop\projects\allegro_intro\allegro_intro\main.cpp(11): warning C4700: uninitialized local variable 'display' used
1>main.obj : error LNK2005: _main already defined in font.obj
1>C:\Users\krish\Desktop\Projects\Allegro_intro\Debug\Allegro_intro.exe : fatal error LNK1169: one or more multiply defined symbols found
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

И затем появляется диалоговое окно с надписью «НЕУДАЧНО ЗАПУСТИТЬ ПРОГРАММУ ... Система не может найти указанный файл».Подскажите пожалуйста что с этим делать

1 Ответ

0 голосов
/ 22 марта 2019

отображение не инициализируется при передаче первому вызову al_show_native_message_box, что приведет к произвольному доступу к памяти.Если вам нужно вызвать al_show_native_message_box перед вызовом al_init и al_create_display, передайте NULL для параметра отображения.

Всегда инициализируйте переменные.;)

...