#include <iostream>
#include <memory>
using namespace std;

void TestUP(unique_ptr<int> &temp)
{
    cout<<*temp<<endl;
    *temp=100;
}

int main (void)
{
    int a{10};
    unique_ptr<int> p{&a};
    TestUP(p);
    cout<<a<<endl;	//yes, it is 100 now
    p.release();	//you bind a local variable, don't forget to release
    return 0;
}