目前,我的 C++ 程序嵌入在 VS Code 窗口的底部面板中运行。如何像在 VS 中一样在单独的控制台窗口中运行它?
我尝试将“设置/终端/资源管理器”选项“种类”从“集成”更改为“外部”,但效果不佳。
我正在试验使用conceptC++20 中引入的 s 作为静态接口的可能性。到目前为止,我做得很好,只是我无法找到一种为概念提供“默认实现”的方法。
例如,我有一个名为 的概念ByteBuffer,它是这样表述的:
template <typename T>
concept ByteBuffer = requires (T t) {
{ t.read_byte() } noexcept -> std::convertible_to<uint8_t>;
{ t.has_byte() } noexcept -> std::same_as<bool>;
/* default implementation for `t.read_until(...)`? */
};
Run Code Online (Sandbox Code Playgroud)
从逻辑上讲,我应该能够为t.read_until(...)(省略参数)提供默认实现,并允许具体实现覆盖默认实现。有办法吗?我该怎么做?
如果这是不可能的,我认为添加这样的能力是合理的。
目前,我不得不求助于 CRTP 来提供一个外观类,我认为它比我想象的更加多余。