What does `class HelloWorld : public Gtk::Window` mean?

前端 未结 3 1105
面向向阳花
面向向阳花 2021-01-25 06:33

I\'m following the Gtk \"Hello World\" tutorial found here, and I\'ve come across a line in a class declaration I\'ve never seen before (I\'ve only been learning to program for

3条回答
  •  忘掉有多难
    2021-01-25 07:28

    It means that HelloWorld is derived from Gtk::Window, so it inherits its behaviour.

    HelloWorld represents a Gtk window, so it is just natural to have it derive from the Gtk's window class. It's constructor will probably add a button to the window (the actual window is created by the parent class constructor, which is invoked automatically when a new instance of HelloWorld is created …) and connect a signal handler (on_button_clicked) to the window.

    You can call all of Gtk::Window's methods through an instance of HelloWorld. In turn, HelloWorld can override virtual methods of Gtk::Window to change its behaviour.

提交回复
热议问题