Re: Пример из boost.asio
От: abrarov Россия http://asio-samples.blogspot.com/
Дата: 14.07.11 21:15
Оценка:
Здравствуйте, Wody, Вы писали:

W>Возникло непонимание. Зачем указатель на новое подключение хранится в членах класса server?

Можно, конечно, хранить в completion handler. В некоторых примерах из документации Asio так и сделано.

А это:
void server::handle_accept(connection_ptr new_connection, const boost::system::error_code& e)


Лучше все же заменить на:
void server::handle_accept(const connection_ptr& new_connection, const boost::system::error_code& e)


W>Если я правильно понимаю, то connection_ptr, будучи shared_ptr<connection> не должен разрушить объект, находясь в недрах asio.

Все правильно понимаете.

W>Зачем тогда хранить указатель в членах класса? Или я неправ?

Это примеры и они ориентированы на то, чтобы показать различные варианты использования Asio.
Programs must be written for people to read, and only incidentally for machines to execute
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.