Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-45521

QT non-C++ compliant should be deprecated

    XMLWordPrintable

    Details

    • Type: Suggestion
    • Status: Closed
    • Priority: Not Evaluated
    • Resolution: Out of scope
    • Affects Version/s: None
    • Fix Version/s: 5.0.0
    • Component/s: Core: Other
    • Labels:
      None
    • Environment:

      All

      Description

      Short:
      With C++11 it is already very easy/compact to implement slots and signals, there is no need to maintain non-c++-standard features that produce bugs, problems and constraint the development.

      Description:
      "Q_OBJECT" macro, "public slots:" special feature, "signals", "emit", etc. was very useful with old C++ style programming. Now a day, macros are considered a poor programming practice and "public slots" is not even standard C++.
      With C++11 Lambda, the "auto" keyword, and the <functional> header, it is currently at least as easy as with QT to implement signals and slots.
      Advantages for QT team:

      • A big amount of code less to maintain, which actually imply costs for management, debugging, etc.
        Advantages for QT users:
      • Full cross-compiler compatibility, full IDE compatibility, no requirment for QMake if all is implemented with C++
      • Less problems with Macros/QMake implementation
        Disadvantage:
      • Only the deprecation of some features.
      • New QT functions to learn/develop.

        Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

            • Assignee:
              ogoffart Olivier Goffart (Woboq GmbH)
              Reporter:
              Escain Adrian
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Gerrit Reviews

                There are no open Gerrit changes