У меня есть Singleton
определенно в коде QML
как:Вложенные свойства Readonly в Singleton не разрешены?
pragma Singleton
import QtQuick 2.0
QtObject {
/*
readonly property QtObject example1: QtObject {
readonly property int example1_1: 10
readonly property int example1_2: 105
readonly property int example1_3: 23
readonly property int example1_4: 105
readonly property int example1_5: 23
}
readonly property QtObject example2: QtObject {
property int example2_1: 10
property int example2_2: 105
property int example2_3: 23
property int example2_4: 105
property int example2_5: 23
}
property QtObject example3: QtObject {
readonly property int example3_1: 10
readonly property int example3_2: 105
readonly property int example3_3: 23
readonly property int example3_4: 105
readonly property int example3_5: 23
}*/
readonly property variant example4: {
"example4_1": 10,
"example4_2": 105,
"example4_3": 23,
"example4_4": 105,
"example4_5": 23
}
}
Они компилировать, однако, example1
имеет участки, выделенные красный цвет (см рисунок ниже) в Qt Creator
, казалось бы, с указанием ошибки.
Это кажется a variant of this bug, только с readonly
рекурсивно применяется. Указанная ошибка была исправлена в Qt 5.4. В целом, хотя мой код кажется несколько вялым и периодически спотыкался, поэтому мне интересно, может ли подход использования QtObject
создавать некоторые актуальные проблемы (мой фактический код довольно большой, поэтому я не уверен, что это преступник, или просто наблюдателем).
Я понимаю, что example4
- лучшая практика, так как я объявляю ряд значений обычного примитивного типа readonly property
.
Мои вопросы:
- ли подсветка синтаксиса плохой ошибка?
- Есть ли фундаментальные проблемы с объявлением
QtObject
с значениямиreadonly property
? - Были ли какие-либо потенциальные проблемы применимы также к
example1
иexample2
, хотя они считаются синтаксически правильными наQt Creator
?
Я использую Qt 5.7
и Qt Creator 4.0.2
.
Да, он компилируется отлично ... ваш совет, вероятно, самый надежный курс ... было просто любопытно, если была какая-то основная причина сомневаться в синтаксисе. :) –