QScopedValueRollback 类
template <typename T> class QScopedValueRollbackQScopedValueRollback 类在析构时将变量重置为其之前的值。 更多信息...
头文件 | #include <QScopedValueRollback> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake | QT += core |
公共函数
QScopedValueRollback(T &var) | |
QScopedValueRollback(T &var, T value) | |
~QScopedValueRollback() | |
void | commit() |
详细描述
QScopedValueRollback 类可用于在抛出异常时还原状态,而不需要编写 try-catch 块。
它还可以用于管理临时设置的变量,例如可重入性保护。使用此类,无论函数是通过返回语句正常退出、提前退出还是通过异常退出,都会重置变量。
模板只能实例化为支持赋值的类型。
另请参阅QScopedPointer 和 QScopeGuard。
成员函数文档
[explicit constexpr]
QScopedValueRollback::QScopedValueRollback(T &var)
内部存储 var 的上一个值,以便在析构时还原。
[explicit constexpr]
QScopedValueRollback::QScopedValueRollback(T &var, T value)
将 value 赋值给 var,并在内部存储 var 的上一个值,以便在析构时还原。
[constexpr]
QScopedValueRollback::~QScopedValueRollback()
将上一个值赋给管理的变量。这是构造时的值或最后调用 commit() 时的值。
[constexpr]
void QScopedValueRollback::commit()
更新管理的变量的上一个值为当前值。
© 2024 The Qt Company Ltd. 本文档中的文档贡献包含各自的版权。文中提供的文档根据免费软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款进行许可。Qt 及相关标志是 The Qt Company Ltd. 在芬兰和/或其他国家的商标。所有其他商标均属于其各自的所有者。