本文整理汇总了C++中TrackList::shared_from_this方法的典型用法代码示例。如果您正苦于以下问题:C++ TrackList::shared_from_this方法的具体用法?C++ TrackList::shared_from_this怎么用?C++ TrackList::shared_from_this使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TrackList
的用法示例。
在下文中一共展示了TrackList::shared_from_this方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Swap
void TrackList::Swap(TrackList &that)
{
auto SwapLOTs = [](
ListOfTracks &a, const std::weak_ptr< TrackList > &aSelf,
ListOfTracks &b, const std::weak_ptr< TrackList > &bSelf )
{
a.swap(b);
for (auto it = a.begin(), last = a.end(); it != last; ++it)
(*it)->SetOwner(aSelf, {it, &a});
for (auto it = b.begin(), last = b.end(); it != last; ++it)
(*it)->SetOwner(bSelf, {it, &b});
};
const auto self = shared_from_this();
const auto otherSelf = that.shared_from_this();
SwapLOTs( *this, self, that, otherSelf );
SwapLOTs( this->mPendingUpdates, self, that.mPendingUpdates, otherSelf );
mUpdaters.swap(that.mUpdaters);
}