QOpcUaVariant Class
OPC UA 变体。更多内容...
| 标题: | #include <QOpcUaVariant> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS OpcUa) target_link_libraries(mytarget PRIVATE Qt6::OpcUa) |
| qmake: | QT += opcua |
| 自: | Qt 6.7 |
公共类型
| enum class | ValueType { Unknown, Boolean, SByte, Byte, Int16, …, DiagnosticInfo } |
公共函数
| QOpcUaVariant() | |
| QOpcUaVariant(QOpcUaVariant::ValueType type, const QVariant &value) | |
| QOpcUaVariant(QOpcUaVariant::ValueType type, const QVariant &value, const QList<qint32> arrayDimensions) | |
| QOpcUaVariant(const QOpcUaVariant &other) | |
| QOpcUaVariant(QOpcUaVariant &&other) | |
| ~QOpcUaVariant() | |
| QList<qint32> | arrayDimensions() const |
| bool | isArray() const |
| void | setArrayDimensions(const QList<qint32> &arrayDimensions) |
| void | setValue(QOpcUaVariant::ValueType type, const QVariant &value) |
| void | setValue(QOpcUaVariant::ValueType type, const QVariant &value, const QList<qint32> &arrayDimensions) |
| void | swap(QOpcUaVariant &other) |
| QOpcUaVariant::ValueType | type() const |
| QVariant | value() const |
| operator QVariant() const | |
| QOpcUaVariant & | operator=(QOpcUaVariant &&other) |
| QOpcUaVariant & | operator=(const QOpcUaVariant &rhs) |
相关的非成员
| bool | operator!=(const QOpcUaVariant &lhs, const QOpcUaVariant &rhs) |
| bool | operator==(const QOpcUaVariant &lhs, const QOpcUaVariant &rhs) |
详细说明
OPC UA 变体是所有内置 OPC UA 类型的联合体,还包含与该值相关的数组维度信息。目前,仅QOpcUaBinaryDataEncoding 和QOpcUaGenericStructHandler 支持此类。
成员类型文档
enum class QOpcUaVariant::ValueType
此枚举包含 OPC UA 变体的可能值类型。
| 常量 | 值 | 描述 |
|---|---|---|
QOpcUaVariant::ValueType::Unknown | 0 | |
QOpcUaVariant::ValueType::Boolean | 1 | |
QOpcUaVariant::ValueType::SByte | 2 | |
QOpcUaVariant::ValueType::Byte | 3 | |
QOpcUaVariant::ValueType::Int16 | 4 | |
QOpcUaVariant::ValueType::UInt16 | 5 | |
QOpcUaVariant::ValueType::Int32 | 6 | |
QOpcUaVariant::ValueType::UInt32 | 7 | , |
QOpcUaVariant::ValueType::Int64 | 8 | |
QOpcUaVariant::ValueType::UInt64 | 9 | |
QOpcUaVariant::ValueType::Float | 10 | |
QOpcUaVariant::ValueType::Double | 11 | |
QOpcUaVariant::ValueType::String | 12 | |
QOpcUaVariant::ValueType::DateTime | 13 | |
QOpcUaVariant::ValueType::Guid | 14 | |
QOpcUaVariant::ValueType::ByteString | 15 | |
QOpcUaVariant::ValueType::XmlElement | 16 | |
QOpcUaVariant::ValueType::NodeId | 17 | |
QOpcUaVariant::ValueType::ExpandedNodeId | 18 | |
QOpcUaVariant::ValueType::StatusCode | 19 | |
QOpcUaVariant::ValueType::QualifiedName | 20 | |
QOpcUaVariant::ValueType::LocalizedText | 21 | |
QOpcUaVariant::ValueType::ExtensionObject | 22 | |
QOpcUaVariant::ValueType::DataValue | 23 | |
QOpcUaVariant::ValueType::Variant | 24 | |
QOpcUaVariant::ValueType::DiagnosticInfo | 25 |
成员函数文档
QOpcUaVariant::QOpcUaVariant()
默认情况下会构建一个新的 OPC UA 变体。
QOpcUaVariant::QOpcUaVariant(QOpcUaVariant::ValueType type, const QVariant &value)
构建一个类型为type 、值为value 的新OPC UA变体。
标量值必须作为包含值type 的QVariant 传递。数组值必须作为包含QList (其值为type )的QVariant 传递。
QOpcUaVariant::QOpcUaVariant(QOpcUaVariant::ValueType type, const QVariant &value, const QList<qint32> arrayDimensions)
构建一个类型为type 、值为value 、数组维度为arrayDimensions 的新OPC UA变体。
标量值必须以QVariant 的形式传递,其中包含值type 。数组值必须以QVariant 的形式传递,其中包含QList ,其值为type 。
QOpcUaVariant::QOpcUaVariant(const QOpcUaVariant &other)
根据other 构建一个新的OPC UA变体。
[constexpr noexcept default] QOpcUaVariant::QOpcUaVariant(QOpcUaVariant &&other)
从other 创建一个新的 OPC UA 变体。
注意: 被移动的源对象 other 将处于部分初始化状态,在此状态下,唯一有效的操作是销毁和赋值。
[noexcept] QOpcUaVariant::~QOpcUaVariant()
销毁此 OPC UA 变体。
QList<qint32> QOpcUaVariant::arrayDimensions() const
返回此 OPC UA 变体的数组维度。
另请参阅 setArrayDimensions()。
bool QOpcUaVariant::isArray() const
如果此 OPC UA 变体包含数组值,则返回true 。
void QOpcUaVariant::setArrayDimensions(const QList<qint32> &arrayDimensions)
将数组维度设置为arrayDimensions 。
另请参阅 arrayDimensions()。
void QOpcUaVariant::setValue(QOpcUaVariant::ValueType type, const QVariant &value)
将此 OPC UA 变体的值设置为value ,类型设置为type 。
标量值必须作为包含值为type 的QVariant 传递。数组值必须作为包含QList (其值为type )的QVariant 传递。
另请参阅 value()。
void QOpcUaVariant::setValue(QOpcUaVariant::ValueType type, const QVariant &value, const QList<qint32> &arrayDimensions)
将此 OPC UA 变体的值设置为value ,类型设置为type ,数组维度设置为arrayDimensions 。
标量值必须作为QVariant 传递,其中包含值为type 的元素。数组值必须作为QVariant 传递,其中包含QList ,其值为type 。
[noexcept] void QOpcUaVariant::swap(QOpcUaVariant &other)
将枚举定义对象other 与该OPC UA变体对象进行交换。此操作速度极快,且绝不会失败。
QOpcUaVariant::ValueType QOpcUaVariant::type() const
返回此 OPC UA 变体的值类型。
QVariant QOpcUaVariant::value() const
返回此 OPC UA 变体的值。
另请参阅 setValue()。
QOpcUaVariant::operator QVariant() const
返回一个包含此 OPC UA 变体的QVariant 。
[noexcept] QOpcUaVariant &QOpcUaVariant::operator=(QOpcUaVariant &&other)
将other 通过移动赋值给此QOpcUaVariant 实例。
注意: 被移动的源对象 other 将处于部分初始化状态,在此状态下,唯一有效的操作是销毁或赋予新值。
QOpcUaVariant &QOpcUaVariant::operator=(const QOpcUaVariant &rhs)
在此 OPC UA 变体中设置来自rhs 的值。
相关非成员
[noexcept] bool operator!=(const QOpcUaVariant &lhs, const QOpcUaVariant &rhs)
如果 `lhs ` 不等于 `rhs`,则返回 `true `。
[noexcept] bool operator==(const QOpcUaVariant &lhs, const QOpcUaVariant &rhs)
如果 `lhs ` 等于 `rhs`,则返回 `true `。
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.