homer512 icon

lambda pointer capture

homer512 | PRO | 09/08/14 04:27:41 PM UTC | 0 ⭐ | 754 👁️ | Never ⏰ | []
C++ |

290 B

|

None

|

0 👍

/

0 👎

#include <cstdio>
 
int main()
{
  auto a = []() { return new char; };
  char* b = a();
  std::printf("%p\n", b); // -> "0x..."
  auto c = [b]() { std::printf("%p\n", b); };
  c(); // -> "0x..."
  auto d = [&b]() { delete b; b = NULL; };
  d();
  std::printf("%p\n", b); // -> "(nil)"
}

Comments