Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

16
  • 9
    @NicolBolas The answer represent possible line of thought of or choices faced by GTK developers before they developed GTK. Like the answerer mentions, the answer lies with the GTK+ developers. Commented Mar 17, 2012 at 6:24
  • 2
    I believe #3 was particularly attractive. Bindings for C++ can be done, but the situation have always been slightly better for C. Commented Mar 17, 2012 at 21:05
  • 3
    @NicolBolas: Either answer the question or don't, but your snide comments aren't helping anyone. Commented Mar 18, 2012 at 10:31
  • 1
    The simple answer : C++ does NOT define an ABI ( application binary interface ) whereas C does. Hence, C based GObject. Microsoft built COM for the same reason. Commented Apr 11, 2014 at 21:17
  • 3
    For instance, multiple inheritance is a controversial idea, and for good reason. By design, the GObject system is built to only support single inheritance, which can drastically simplify the inheritance hierarchies. Also a bunk reason; why would they care if users use MI or not? It wouldn't affect their project (GIMP) and there's nothing about C++ that forces you to use MI. Just don't do it if you don't like it (that's my philosophy, and I've never run into problems). Commented Aug 6, 2014 at 18:35