-1

我需要在我的程序中使用 BGI 图形,它在 wxDevCpp 7.3 中运行良好。但是现在我安装了这个 IDE 7.4 的更新版本,按照指令http://www.cs.colorado.edu/~main/bgi/dev-c++/完成了所有操作,就像以前一样,但是现在当我尝试编译任何简单的程序如

#include <graphics.h>

int main( )
{
    initwindow(400, 300, "First Sample");
    circle(100, 50, 40);
    while (!kbhit( ))
    {
        delay(200);
    }
    return 0;
}

我收到多个错误说

initwindow(), circle(), kbhit(), delay()

未在范围内声明。我不知道该怎么做。更新的 wxDevCpp 的变化是不同的文件夹结构,但我将 graphics.h 和 libbgi.a 复制粘贴到了几个文件夹中。我没有忘记按照说明添加链接器命令,但它不起作用。另外,我发现另一个 graphics.h 是随着新 wxDevCpp 的安装而出现的,虽然它可能会带来冲突,所以我把它删除了。没变 :(

4

1 回答 1

-1

我想我解决了!graphics.h 实际上有问题当我将所有 graphics.h 复制粘贴到我的 .cpp 中时,编译器给出了一个错误,即 int right 在以下代码中声明了两次:

void printimage(
    const char* title=NULL, 
    double width_inches=7, double border_left_inches=0.75, double border_top_inches=0.75,
    int left=0, int right=0, int right=INT_MAX, int bottom=INT_MAX,
    bool active=true, HWND hwnd=NULL
    );

重新定义 int 对,所以它只是一个原型,我把它改成:

void printimage(
    const char* title=NULL, 
    double width_inches=7, double border_left_inches=0.75, double border_top_inches=0.75,
    int left=0, int right=0, int=INT_MAX, int bottom=INT_MAX,
    bool active=true, HWND hwnd=NULL
    );

现在可以了!!!

于 2014-04-06T05:58:33.387 回答