mirror of
https://github.com/isocpp/CppCoreGuidelines.git
synced 2025-12-17 12:44:42 +03:00
F.53 add notes about capture of this and non-local pointers
closes #1816
This commit is contained in:
@@ -4081,6 +4081,12 @@ Pointers and references to locals shouldn't outlive their scope. Lambdas that ca
|
||||
// always be available for the call.
|
||||
thread_pool.queue_work([=] { process(local); });
|
||||
|
||||
##### Note
|
||||
|
||||
If a non-local pointer must be captured, consider using `unique_ptr`; this handles both lifetime and synchronization.
|
||||
|
||||
If the `this` pointer must be captured, consider using `[*this]` capture, which creates a copy of the entire object.
|
||||
|
||||
##### Enforcement
|
||||
|
||||
* (Simple) Warn when capture-list contains a reference to a locally declared variable
|
||||
|
||||
Reference in New Issue
Block a user