Simple_window.h Страуструпа

Я пытаюсь заставить графические примеры работать из Принципов и практик Страуструпа ... C ++, но безрезультатно (пока). Я установил fltk-материал и знаю, что он работает нормально, поскольку мне удалось получить окно для отображения с помощью программы, предложенной в приложении к его книге:

#include <FL/Fl.H>
#include <FL/Fl_Box.H>
#include <FL/Fl_Window.H>

int main(){

    Fl_Window window(200,200, "title here");
    Fl_Box box(0,0,200,200,"Hey, hello wrld");
    window.show();
    return Fl::run();
}

Однако, попробовав свою собственную, используя его Simple_window.h (может быть найдено на его сайте) дает "ссылка на 'Window' неоднозначна", поскольку она уже находится в usr / include / X11 / Xh. Поэтому я попытался указать соответствующее пространство имен:

struct Simple_window : Graph_lib::Window {  //Changed Window to inc. namespace
    Simple_window(Point xy, int w, int h, const string& title );

    bool wait_for_button(); // simple event loop

.
.
.

Но это дает мне еще несколько ошибок, которых я не понимаю:

$ clear; g++ -Wno-deprecated window.cpp -o holz
    /tmp/ccIFivNg.o: In function `main':
    window.cpp:(.text+0x64): undefined reference to `Simple_window::Simple_window(Point, int, int, String const&)'
    /tmp/ccIFivNg.o: In function `Graph_lib::Window::~Window()':
    window.cpp:(.text._ZN9Graph_lib6WindowD2Ev[_ZN9Graph_lib6WindowD5Ev]+0x14): undefined reference to `vtable for Graph_lib::Window'

и т. Д.

Я чувствую, что освоение графики будет долгим и трудным - _-

6
задан Nathan Hutton 20 August 2011 в 19:11
поделиться