Как я могу получить адрес scoped_ptr?
Я изучаю умные указатели, в частности, scoped_ptr
, Я читал про операторов *
а также ->
, Я пытался запустить этот код:
int main(){
boost::scoped_ptr<int>number(new int);
*number = 432;
std::cout<<"Value: "<<*number <<std::endl<< " Adress: "<< number <<std::endl;
return 0;
}
И результат:
Value: 432 Adress: 1
Это не правильно.
Как я должен использовать ->
оператор, чтобы получить правильный адрес?
1 ответ
Решение
Использование get()
функция-член:
boost::scoped_ptr<int>number(new int);
*number = 432;
std::cout<<"Value: "<<*number <<std::endl<< " Adress: "<< number.get() <<std::endl;
Подробнее здесь