2017-10-17 2 views
0

Ich versuche, ein Registerkartenfenster durch Lesen von einem ValueTree in JUCE zu erstellen.JUCE - Member Funktion nicht durchführbar: 'this' Argument hat Typ const

Ich verwende den folgenden Code, um das Stammelement der entsprechenden Registerkarte auf ein untergeordnetes Element des Baums zu setzen (vollständiger Code verfügbar here). Allerdings erhalte ich die Fehlermeldung:

"Member function 'getValueTree' not viable: 'this' argument has type 'const GlobalValueTree', but function is not marked const".

ich ein Objekt bin mit wie der Baum zurück von getValueTree() oder die Funktion selbst ist nicht statisch.

Kann mir jemand in die richtige Richtung weisen, warum das falsch ist und wie man es beheben kann?

Antwort

2

I get the error "Member function 'getValueTree' not viable: 'this' argument has type 'const GlobalValueTree', but function is not marked const"

Dies liegt daran, wconst ist aber die Methode getValueTree kann nur auf nicht-const DataSelectorWindow Objekten arbeiten.

Wenn das DataSelectorWindow Objekt wurde von Ihnen geschrieben, und Sie denken, dass getValueTree() erlaubt sein sollte, auf const Objekte aufgerufen werden, dessen Prototyp ändern:

<return-value> getValueTree(<params>) const { 
    ... 
} 

Wenn das DataSelectorWindow Objekt von jemand anderem geschrieben wurde,

AccelerometerPage (DataSelectorWindow& w) { 
    ... 
} 
+0

Dank: Ihr AccelerometerPage c'tor sollte einen nicht-const DataSelectorWindow&, wie diese erhält! Ich lerne immer noch über die Arbeit mit größeren Projekten und es gibt immer noch das gelegentliche Problem, das kommt – Jefferson

+0

@ Jefferson, sicher, viel Glück :) –

Verwandte Themen