Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. German
  4. Fehler mit Standardkonstruktor in qmutex.h
Forum Update on Monday, May 27th 2025

Fehler mit Standardkonstruktor in qmutex.h

Scheduled Pinned Locked Moved Unsolved German
18 Posts 4 Posters 1.4k Views
  • 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.
  • M Offline
    M Offline
    makopo
    wrote on last edited by makopo
    #1

    Hallo,

    in VS 2019 erhalte ich mit der Implementierung von QMutex die folgende Fehlermeldung.

    "E2422 Der Standardwert des Standardkonstruktors kann nicht constexpr sein, da der entsprechende implizit deklarierte Standardkonstruktor nicht constexpr wäre"

    Der Fehler soll in der Datei qmutex.h in Zeile 133 stehen. Das Programm lässt sich damit normal kompilieren, allerdings verhält es sich nicht so wie es soll und es könnte sein, das der QMutex der Grund ist.

    Ich vermute auch mal das die Ursache hierfür eine tieferliegende ist.

    Weiß jemand Rat?

    jsulmJ 1 Reply Last reply
    0
    • M makopo

      Hallo,

      in VS 2019 erhalte ich mit der Implementierung von QMutex die folgende Fehlermeldung.

      "E2422 Der Standardwert des Standardkonstruktors kann nicht constexpr sein, da der entsprechende implizit deklarierte Standardkonstruktor nicht constexpr wäre"

      Der Fehler soll in der Datei qmutex.h in Zeile 133 stehen. Das Programm lässt sich damit normal kompilieren, allerdings verhält es sich nicht so wie es soll und es könnte sein, das der QMutex der Grund ist.

      Ich vermute auch mal das die Ursache hierfür eine tieferliegende ist.

      Weiß jemand Rat?

      jsulmJ Online
      jsulmJ Online
      jsulm
      Lifetime Qt Champion
      wrote on last edited by
      #2

      @makopo Wo in deinem Code ist der Ursprung dieser Warnung? Kannst du die entsprächende Stelle im Code zeigen?

      https://forum.qt.io/topic/113070/qt-code-of-conduct

      M 1 Reply Last reply
      0
      • jsulmJ jsulm

        @makopo Wo in deinem Code ist der Ursprung dieser Warnung? Kannst du die entsprächende Stelle im Code zeigen?

        M Offline
        M Offline
        makopo
        wrote on last edited by makopo
        #3

        @jsulm
        Der Fehler wird nicht gemeldet, wenn ich alles was mit QMutex zu tun hat auskommentiere (also vor allem QMutex nicht inkludiere). EDIT: Das der Fehler nicht angezeigt wird wenn ich QMutex nicht einbinde ist ja normal. Habe ich gerade selbst gemerkt.. Knoten im Kopf^^

        Hier ein Ausschnitt wie es vor dem Auskommentieren aussah:

        // .h
        #include <QMutex>
        #include <QMutexLocker>
        
        class Threading : public QObject, public QOpenGLWidget {
        Q_Object
        
        public:
        Threading(QObject* parent);
        
        void paintWindow();
        
        private:
            QMutex  m_mutex;
        };
        
        // .cpp
        Threading::Threading(QObject* parent)  {
            qRegisterMetaType<CComPtr<IDeckLinkVideoFrame>>("CComPtr<IDeckLinkVideoFrame>");
            //Initializing GLEW
        	if (glewInit() != S_OK)  
        		qDebug() << "Initializing GLEW does not work.";
        
        	//Initializing Screen Preview Helper
        	ScreenPreviewHelperInstance(m_previewHelper);
        }
        
        void Threading::paintWindow() {
        if (m_previewHelper != nullptr) {
            QMutexLocker(&m_mutex);
            m_previewHelper->PaintGL();
            qDebug() << "VideoScreen: paintGL was called.";
            }
        }
        
        1 Reply Last reply
        0
        • JoeCFDJ Offline
          JoeCFDJ Offline
          JoeCFD
          wrote on last edited by
          #4

          Hast Du so was in app.pro?
          CONFIG += c++17
          oder in CMakeLists.txt
          set(CMAKE_CXX_STANDARD 17)

          M 1 Reply Last reply
          0
          • JoeCFDJ JoeCFD

            Hast Du so was in app.pro?
            CONFIG += c++17
            oder in CMakeLists.txt
            set(CMAKE_CXX_STANDARD 17)

            M Offline
            M Offline
            makopo
            wrote on last edited by makopo
            #5

            @JoeCFD
            Nein, das habe ich in der .pro stehen:
            CONFIG += debug

            EDIT: Wenn ich CONFIG c++17 zuweise, ändert das auch leider nichts an der Situation.

            JoeCFDJ 1 Reply Last reply
            0
            • M makopo

              @JoeCFD
              Nein, das habe ich in der .pro stehen:
              CONFIG += debug

              EDIT: Wenn ich CONFIG c++17 zuweise, ändert das auch leider nichts an der Situation.

              JoeCFDJ Offline
              JoeCFDJ Offline
              JoeCFD
              wrote on last edited by
              #6

              @makopo Es ist besser, das zu haben.
              https://forum.qt.io/topic/111793/how-to-resolve-error-of-qmutex-h/17

              M 1 Reply Last reply
              1
              • JoeCFDJ JoeCFD

                @makopo Es ist besser, das zu haben.
                https://forum.qt.io/topic/111793/how-to-resolve-error-of-qmutex-h/17

                M Offline
                M Offline
                makopo
                wrote on last edited by makopo
                #7

                @JoeCFD

                Es ist kurios auf eine noch ältere Version als 5.15.1. zurückzugehen.
                Bei der Version 6.1.2. sieht es mit den Fehlermeldungen zu diversen .h- Dateien allerdings noch schlimmer aus.

                1 Reply Last reply
                0
                • Christian EhrlicherC Online
                  Christian EhrlicherC Online
                  Christian Ehrlicher
                  Lifetime Qt Champion
                  wrote on last edited by
                  #8

                  Qt 6.1.2 kann definitiv mit MSVC2019 ohne Fehler kompiliert werden - da ist irgendwas in deiner Config falsch. Was für eine MSVC-Version hast Du genau?

                  Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                  Visit the Qt Academy at https://academy.qt.io/catalog

                  M 1 Reply Last reply
                  0
                  • Christian EhrlicherC Christian Ehrlicher

                    Qt 6.1.2 kann definitiv mit MSVC2019 ohne Fehler kompiliert werden - da ist irgendwas in deiner Config falsch. Was für eine MSVC-Version hast Du genau?

                    M Offline
                    M Offline
                    makopo
                    wrote on last edited by
                    #9

                    @Christian-Ehrlicher
                    MSVC2019 64Bit

                    Es gibt Meldungen zu Fehlern in den Dateien qmutex.h, qproperties.h und qmetatype.h

                    Das ist die Config der .pro Datei

                    TEMPLATE = app
                    TARGET = VideoMeter
                    DESTDIR = ./x64/Debug
                    CONFIG += c++17
                    LIBS += -L"."
                    DEPENDPATH += .
                    MOC_DIR += .
                    OBJECTS_DIR += debug
                    UI_DIR += .
                    RCC_DIR += .
                    HEADERS += ./qvideometer.h
                    SOURCES += ./qvideometer.cpp \
                        ./main.cpp
                    FORMS += ./qvideometer.ui
                    RESOURCES += qvideometer.qrc
                    QT += widgets
                    QT += gui
                    QT += core
                    
                    1 Reply Last reply
                    0
                    • Christian EhrlicherC Online
                      Christian EhrlicherC Online
                      Christian Ehrlicher
                      Lifetime Qt Champion
                      wrote on last edited by
                      #10

                      @makopo said in Fehler mit Standardkonstruktor in qmutex.h:

                      MSVC2019 64Bit

                      Das weiß ich schon. Ich wollte die exakte Version.

                      Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                      Visit the Qt Academy at https://academy.qt.io/catalog

                      M 1 Reply Last reply
                      0
                      • Christian EhrlicherC Christian Ehrlicher

                        @makopo said in Fehler mit Standardkonstruktor in qmutex.h:

                        MSVC2019 64Bit

                        Das weiß ich schon. Ich wollte die exakte Version.

                        M Offline
                        M Offline
                        makopo
                        wrote on last edited by
                        #11

                        @Christian-Ehrlicher

                        6.1.2-0-202106290506

                        Versionsnummer laut Qt Installer. Ich wüsste auch sonst nicht wodran ich die extakte Version erkennen kann...

                        jsulmJ 1 Reply Last reply
                        0
                        • M makopo

                          @Christian-Ehrlicher

                          6.1.2-0-202106290506

                          Versionsnummer laut Qt Installer. Ich wüsste auch sonst nicht wodran ich die extakte Version erkennen kann...

                          jsulmJ Online
                          jsulmJ Online
                          jsulm
                          Lifetime Qt Champion
                          wrote on last edited by
                          #12

                          @makopo Es ging doch um die Visual Studio Version nicht Qt Version? Die sollte man in Visual Studio finden können.
                          "Was für eine MSVC-Version hast Du genau?".

                          https://forum.qt.io/topic/113070/qt-code-of-conduct

                          M 1 Reply Last reply
                          0
                          • jsulmJ jsulm

                            @makopo Es ging doch um die Visual Studio Version nicht Qt Version? Die sollte man in Visual Studio finden können.
                            "Was für eine MSVC-Version hast Du genau?".

                            M Offline
                            M Offline
                            makopo
                            wrote on last edited by
                            #13

                            @jsulm

                            Ok, ich dachte es geht um die Version des Compilers.
                            Ich nutze Visual Studio 16.10.2.

                            jsulmJ 1 Reply Last reply
                            0
                            • M makopo

                              @jsulm

                              Ok, ich dachte es geht um die Version des Compilers.
                              Ich nutze Visual Studio 16.10.2.

                              jsulmJ Online
                              jsulmJ Online
                              jsulm
                              Lifetime Qt Champion
                              wrote on last edited by
                              #14

                              @makopo said in Fehler mit Standardkonstruktor in qmutex.h:

                              ich dachte es geht um die Version des Compilers

                              Ist richtig, wobei diese von der Visual Studio version abgeleitet werden kann, wenn ich mich nicht irre.

                              https://forum.qt.io/topic/113070/qt-code-of-conduct

                              1 Reply Last reply
                              0
                              • Christian EhrlicherC Online
                                Christian EhrlicherC Online
                                Christian Ehrlicher
                                Lifetime Qt Champion
                                wrote on last edited by
                                #15

                                16.10.2 ist der aktuellste MSVC compiler.
                                Bitte erzeuge ein neues Qt-Projekt und in der main.cpp inkludierst Du nur QMutex und schau ob es kompiliert.

                                Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                                Visit the Qt Academy at https://academy.qt.io/catalog

                                M 1 Reply Last reply
                                0
                                • Christian EhrlicherC Christian Ehrlicher

                                  16.10.2 ist der aktuellste MSVC compiler.
                                  Bitte erzeuge ein neues Qt-Projekt und in der main.cpp inkludierst Du nur QMutex und schau ob es kompiliert.

                                  M Offline
                                  M Offline
                                  makopo
                                  wrote on last edited by
                                  #16

                                  @Christian-Ehrlicher
                                  Ich bin wirklich verwirrt, wenn ich ein neues Projekt anlege erhalte ich 468 Fehler beim Kompilieren. Quer durch sämtliche Q-Module. Wenn ich mein "altes" Projekt auf 6.1.2 umstelle erhalte ih 10 Fehler.
                                  Was ich getan habe? Ich habe in VS 2019 eine QWidgets Application angelegt.
                                  In den Projekteinstellungen habe ich dann die folgenden Anpassungen vorgenommen

                                  • VC++ Verzeichnisse/Includeverzeichnisse -> include-verzeichnis der Version eingebunden
                                  • VC++ Verzeichnisse/Bibliotheksverzeichnisse -> lib Verzeichnis der Version eingebunden
                                  • C++/Zusätzliche Includeverzeichnisse -> include-Verzeichnis eingebunden
                                  • Linker/Allgemein/Zusätzliche Bibliotheksverzeichnisse -> lib Verzeichnis eingebunden.

                                  Die 468 Fehler wurden schon vor Anpassung der Projekteigenschaften angezeigt.
                                  Mit Version 5.13.2. kompiliert es ohne Probleme.

                                  1 Reply Last reply
                                  0
                                  • Christian EhrlicherC Online
                                    Christian EhrlicherC Online
                                    Christian Ehrlicher
                                    Lifetime Qt Champion
                                    wrote on last edited by
                                    #17

                                    Nutze cmake oder qmake aber erzeuge kein rojekt für Qt von Hand...

                                    Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                                    Visit the Qt Academy at https://academy.qt.io/catalog

                                    1 Reply Last reply
                                    0
                                    • M Offline
                                      M Offline
                                      makopo
                                      wrote on last edited by
                                      #18

                                      Ich benutze die QtVS Tools für Visual Studio. Dort kann man ja quasi automatisch ein neues Projekt anlegen. Die Projekteinstellung muss ich ja im Grunde auch gar nicht vornehmen, da die durch VS nach Wahl der QT Version dynamisch gesetzt werden.
                                      Mit Qt Creator funktioniert dann auch die Version 6.1.2.

                                      1 Reply Last reply
                                      0

                                      • Login

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