### <aname="Res-move"></a>ES.56: Write `std::move()` only when you need to explicitly move an object to another scope
@ -9700,6 +9673,34 @@ The language already knows that a returned value is a temporary object that can
* Flag when an object is potentially moved from and the next operation is a `const` operation; there should first be an intervening non-`const` operation, ideally assignment, to first reset the object's value.
### <aname="Res-new"></a>ES.60: Avoid `new` and `delete` outside resource management functions
##### Reason
Direct resource management in application code is error-prone and tedious.
##### Note
also known as "No naked `new`!"
##### Example, bad
void f(int n)
{
auto p = new X[n]; // n default constructed Xs
// ...
delete[] p;
}
There can be code in the `...` part that causes the `delete` never to happen.