QScopedValueRollback 类

template <typename T> class QScopedValueRollback

QScopedValueRollback 类在析构时将变量重置为其之前的值。 更多信息...

头文件 #include <QScopedValueRollback>
CMakefind_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmakeQT += core

公共函数

详细描述

QScopedValueRollback 类可用于在抛出异常时还原状态,而不需要编写 try-catch 块。

它还可以用于管理临时设置的变量,例如可重入性保护。使用此类,无论函数是通过返回语句正常退出、提前退出还是通过异常退出,都会重置变量。

模板只能实例化为支持赋值的类型。

另请参阅QScopedPointerQScopeGuard

成员函数文档

[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. 在芬兰和/或其他国家的商标。所有其他商标均属于其各自的所有者。