<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Exchange Server">
<!-- converted from text --><style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>
</head>
<body>
<div>
<div>std::async(std::launch::deferred, ...);</div>
<div><br>
</div>
<div>?</div>
<div><br>
</div>
<div><br>
</div>
<div><br>
</div>
<div id="x_composer_signature">Best regards,
<div>Jesús</div>
</div>
<div><br>
</div>
<div><br>
</div>
<div>-------- Original message --------</div>
<div>From: Tor Arne Vestbø <Tor.arne.Vestbo@qt.io> </div>
<div>Date: 07/03/2019 18:11 (GMT+01:00) </div>
<div>To: Volker Hilsheimer <volker.hilsheimer@qt.io> </div>
<div>Cc: Qt development mailing list <development@qt-project.org> </div>
<div>Subject: Re: [Development] Go's "defer" statement for C++/Qt </div>
<div><br>
</div>
</div>
<font size="2"><span style="font-size:11pt;">
<div class="PlainText"><a href="https://doc.qt.io/qt-5/qscopeguard.html">https://doc.qt.io/qt-5/qscopeguard.html</a> 😊<br>
<br>
Tor Arne <br>
<br>
> On 7 Mar 2019, at 18:01, Volker Hilsheimer <volker.hilsheimer@qt.io> wrote:<br>
> <br>
> Ahoy,<br>
> <br>
> In what little development I’ve done in golang, I appreciated the “defer” statement as a means to write cleaner code. Basically, defer schedules a statement for execution when the stack unwinds.<br>
> <br>
> <a href="https://tour.golang.org/flowcontrol/12">https://tour.golang.org/flowcontrol/12</a><br>
> <br>
> We have several specialized helper classes in Qt for similar purposes, f.ex QMutexLocker and friends, or the internal QBoolBlocker [1]. Seeing the various specialized classes we have, I thought that something generic in Qt could be useful to have (although
 our specialised classes provide some additional convenience and/or logic).<br>
> <br>
> So, I pushed a few lines code to<br>
> <br>
> <a href="https://git.qt.io/vohilshe/qt_defer">https://git.qt.io/vohilshe/qt_defer</a><br>
> <br>
> Would like to hear what you think.<br>
> <br>
> Perhaps someone can find ways to make this more elegant without introducing tons of preprocessor/macro shenanigans, or perhaps even without depending on C++17's implicit template argument deduction (without enabling C++17 in the config this doesn't build
 for me, even though I don’t use auto in the template paramter list).<br>
> <br>
> <br>
> Cheers,<br>
> Volker<br>
> <br>
> <br>
> [1] which was requested to be made public in <a href="https://bugreports.qt.io/browse/QTBUG-38575">
https://bugreports.qt.io/browse/QTBUG-38575</a><br>
> <br>
> <br>
> _______________________________________________<br>
> Development mailing list<br>
> Development@qt-project.org<br>
> <a href="https://lists.qt-project.org/listinfo/development">https://lists.qt-project.org/listinfo/development</a><br>
<br>
_______________________________________________<br>
Development mailing list<br>
Development@qt-project.org<br>
<a href="https://lists.qt-project.org/listinfo/development">https://lists.qt-project.org/listinfo/development</a><br>
</div>
</span></font>
</body>
</html>