Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Boost vs Qt
Forum Updated to NodeBB v4.3 + New Features

Boost vs Qt

Scheduled Pinned Locked Moved General and Desktop
13 Posts 8 Posters 25.3k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • G Offline
    G Offline
    giesbert
    wrote on 23 Jun 2011, 16:59 last edited by
    #2

    At first: It's different

    I'm using both, but more Qt than boost, I will tell you why:

    first of all: both are professional libs

    Qt is really comfortable to use

    boost documentation is IMO not the best

    but boost has some stuff, Qt does not have: smart pointers are better and more

    We use boost test for unit testing our software (we used it before QtTest exists :-)

    boost functors are pretty good and much better than STL support for it.

    Nokia Certified Qt Specialist.
    Programming Is Like Sex: One mistake and you have to support it for the rest of your life. (Michael Sinz)

    1 Reply Last reply
    1
    • K Offline
      K Offline
      koahnig
      wrote on 23 Jun 2011, 17:12 last edited by
      #3

      I agree with Gerolf, especially when it comes to documentation. The boost documentation is not really straight forward, but it is managable.
      It is certainly possible to use Qt and boost in parallel. So, far I have not run into problems.

      Vote the answer(s) that helped you to solve your issue(s)

      1 Reply Last reply
      0
      • F Offline
        F Offline
        Franzk
        wrote on 23 Jun 2011, 17:21 last edited by
        #4

        Qt API wins on consistency and predictability.

        "Horse sense is the thing a horse has which keeps it from betting on people." -- W.C. Fields

        http://www.catb.org/~esr/faqs/smart-questions.html

        1 Reply Last reply
        0
        • U Offline
          U Offline
          Uwe Kindler
          wrote on 23 Jun 2011, 17:33 last edited by
          #5

          Great - now you have started the war ;)
          We use boost and Qt together in our Qt based applications - but more Qt than boost. After some years of development with both libraries in my opinion:

          boost documentation is (really, really) horrible compared to Qt documentation and a real pain to read - to make it short: the documentation is simply bad

          boost documentation is incomplete, not well structured and missing good examples

          boost is focused on generic template programming while Qt is more focused on clean object oriented

          programming

          boost smart pointers are better than Qt smart pointer - and because they are easy to use the bad documentation doesn't matter here

          the heavy use of templates in boost increases compile times (even on my core i7)

          because of the templates boost compile errors are pure nightmare

          boost has a lot of stuff that is missing in Qt (and vice versa)

          boost libraries we mainly use here are: shared pointer, property tree (i like it), foreach, filesystem, multi-index, optional, serialization, thread

          boost test framework is not bad - we use it for non Qt applications and libraries

          Boost has a lot of great stuff. The problem is the really bad documentation. Even if a library is "high professional c++" or very "excellent designed" - without a good documentation it is useless or a pain to use. If you ever worked with the Qt documentation, which is IMHO the best documentation of any library I ever used, you will hate the boost documentation.

          Another great thing on Qt are the lot of good examples. Sometimes, or often you can learn more from a good example than from a lot of documentation pages. boost is missing these examples and so it is much more difficult to use in my opinion.

          1 Reply Last reply
          0
          • G Offline
            G Offline
            giesbert
            wrote on 23 Jun 2011, 18:27 last edited by
            #6

            As I said, I prefer Qt on all, that Qt has, the rest I take from boost ;-)

            On plus for boost is, they try to bring their stuff into C++ standards.

            Nokia Certified Qt Specialist.
            Programming Is Like Sex: One mistake and you have to support it for the rest of your life. (Michael Sinz)

            1 Reply Last reply
            0
            • K Offline
              K Offline
              koahnig
              wrote on 23 Jun 2011, 19:12 last edited by
              #7

              For those who can read German. Here is the German wikipedia entry for boost: http://de.wikipedia.org/wiki/Boost_(C++-Bibliothek)

              There is a section there specifying the "requirements for license" in order to be part of boost. The first requirement is that it has to be easy to read and easy to understand. :-)
              In reference to the statements given here on boost's documentation, it is obviously refering to the license writing only.

              Is someone aware of the time line for becoming part of C++ standard?

              Vote the answer(s) that helped you to solve your issue(s)

              1 Reply Last reply
              0
              • F Offline
                F Offline
                Franzk
                wrote on 23 Jun 2011, 19:52 last edited by
                #8

                Parts of boost will become part of the stl in C++11.

                "Horse sense is the thing a horse has which keeps it from betting on people." -- W.C. Fields

                http://www.catb.org/~esr/faqs/smart-questions.html

                1 Reply Last reply
                0
                • S Offline
                  S Offline
                  Scylla
                  wrote on 23 Jun 2011, 21:34 last edited by
                  #9

                  @koahning
                  Your link is broken, a ")" at the end is missing ;-)

                  [fixed -mariusg]

                  1 Reply Last reply
                  0
                  • G Offline
                    G Offline
                    goetz
                    wrote on 23 Jun 2011, 21:48 last edited by
                    #10

                    Just for the records:
                    The english wikipedia entry: http://en.wikipedia.org/wiki/Boost_C++_Libraries

                    http://www.catb.org/~esr/faqs/smart-questions.html

                    1 Reply Last reply
                    0
                    • K Offline
                      K Offline
                      koahnig
                      wrote on 24 Jun 2011, 06:42 last edited by
                      #11

                      Thanks to all for fixing and sorry for the broken link.

                      I had checked the English Wiki description of boost, but it is much shorter and does not have this interesting section. Therefore, the German version was posted.

                      However, in order to share the section in question here it is translated by Google:

                      "License conditions
                      To be part of Boost, a library must have a license, the following conditions are met:
                      It must be easily readable and understandable.
                      You must give each for any purpose (commercial and non-commercial) free copy, use and modification rights.
                      You must demand that the validity of the license is specified in each copy, or modify the software source.
                      You may not require that the license is specified in or generated executable binaries.
                      You may not require that the source code is included in or generated executable binaries.
                      You may restrict the use of names and description of the library to the standard version on the Boost website."

                      Vote the answer(s) that helped you to solve your issue(s)

                      1 Reply Last reply
                      0
                      • S Offline
                        S Offline
                        skypjack
                        wrote on 24 Jun 2011, 07:12 last edited by
                        #12

                        boost c++ represents a step to the c++ next technical release, for components libraries. boost c++ is a library of libraries. qt is a framework that works on c++, and not with c++. you cannot compare apples and balls, in spite of appearances! :-)

                        1 Reply Last reply
                        0
                        • G Offline
                          G Offline
                          giesbert
                          wrote on 24 Jun 2011, 07:36 last edited by
                          #13

                          That's why I said, both are good. You can combine them. Some parts exist in both, there I typically use Qt, but many things are only in one of Qt and Boost.

                          Nokia Certified Qt Specialist.
                          Programming Is Like Sex: One mistake and you have to support it for the rest of your life. (Michael Sinz)

                          1 Reply Last reply
                          0

                          11/13

                          24 Jun 2011, 06:42

                          • Login

                          • Login or register to search.
                          11 out of 13
                          • First post
                            11/13
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • Users
                          • Groups
                          • Search
                          • Get Qt Extensions
                          • Unsolved