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

QT non-C++ compliant should be deprecated

    XMLWordPrintable

Details

    • Suggestion
    • Resolution: Out of scope
    • Not Evaluated
    • 5.0.0
    • None
    • Core: Other
    • None
    • 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

        Activity

          People

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

            Dates

              Created:
              Updated:
              Resolved: