Qt4.8.1でこのクラスQScopedValueRollbackを見ました。誰でもこの新しいクラスの使用例を示すのを手伝うことができますか?英語でごめんなさい。なぜそれが有用で必要なのか、そのドキュメントからはよくわかりません。ですから、誰かが私にサンプルコードを提供してくれれば、私はそれをより明確に理解できると思います
1 に答える
1
ドキュメントから理解できるのは、変数をスコープ外の値または最後にコミットされた値に自動的にロールバックするために使用されます。
void myfunc(int &val)
{
// new scope
QScopedValueRollBack newScope(val);
val = 2;
.
.
if (err)
throw();
}
int val = 1;
myfunc(val);
// val = 1 again.. unless you call commit() after setting val inside new scope.. in which case val = 2 here.
有用性-try-catchブロックを作成せずに、例外がスローされたときに状態を元に戻すために使用できます
于 2012-12-25T03:10:53.167 に答える