【发布时间】:2021-05-11 15:48:42
【问题描述】:
根据 cppreference,用于定义视图 view_interface 的帮助程序类模板使用奇怪的重复模板模式 (CRTP) 技术。
它们背后的设计理念是什么?与在派生类中重写虚拟基类方法相比,是否有显着优势?
【问题讨论】:
-
一个视图是非拥有的,并且是轻量级的。记住这一点。继承不是。
-
@doug:从具有虚函数的类型继承并不是轻量级的。
-
@doug
single_view<std::function<void()>>拥有而不是相当轻量级。 -
@NicolBolas 我应该更清楚一点,说不,而不是不。
标签: c++ c++20 range-v3 std-ranges