У Boost есть настройка конфигурации, чтобы она использовала std::shared_ptr
? Не в общем. Boost.Asio apparently has a way to make the internals use std::shared_ptr
(который, кажется, включается автоматически, когда доступно std::shared_ptr
). Но для этого не существует настроек Boost.
Возможно, вы можете сделать какую-то находку для замены гимнастики, чтобы она работала. Конечно, это предполагает, что ни одна из этих библиотек Boost не делает предположений о внутренних компонентах Boost. И что ни у кого из них нет доступа к его внутренностям. И что boost::shared_ptr
не имеет различий в интерфейсе от std::shared_ptr
.
Это не будет стоить усилий. Пусть Boost использует любой код, который он хочет для внутреннего использования. Единственное место, где это должно иметь для вас значение, - это интерфейсы, и очень немногие библиотеки Boost фактически используют boost::shared_ptr
в интерфейсе к вашему коду. В самом деле, я сделал поиск в Google для std::shared_ptr
в документации Boost 1.59, и единственное место, где я обнаружил, что оно даже упоминалось, было в документе, который я связал выше.
Почему вы хотите изменить внутреннюю часть форсирования? Используйте 'std :: shared_ptr' в своем коде и дайте возможность использовать все, что ему нужно. – vsoftco
Внутренняя? Нет интерфейсов какой-либо библиотеки, которые ожидают или возвращают shared_ptr? – gsf
@gsf: Функции принимают/возвращают 'shared_ptr', только если они передают право собственности на объект. Очень немногие библиотеки Boost на самом деле должны требовать права собственности на что-то, через которое проходит пользователь. Поэтому большинство параметров - это типы значений, ссылки или голые (не владеющие) указатели. В самом деле, я не могу думать о функции Boost, которая использует 'shared_ptr' в интерфейсе. –