【问题标题】:Can you write a concept for ContiguousIterator?你能为 ContiguousIterator 写一个概念吗?
【发布时间】:2018-05-23 07:22:28
【问题描述】:

我知道在words specification 意义上有 ContiguousIterator 的概念,但我想知道它是否可以使用 C++20/C++17 概念 TS 语法编写。

我的问题是,与RandomAccessIterator ContiguousIterator 不同,它不仅需要像it+123 这样的一些操作才能工作,还取决于该操作的运行时结果。

【问题讨论】:

    标签: c++ iterator c++-concepts c++20


    【解决方案1】:

    不,你不能,如果没有特征类或其他帮助器,类型选择加入是连续的。

    【讨论】:

    • 我不知道...不是某些ContiguousIterator i 的定义@ 987654322@ 吗??
    • @massa 你如何在编译时检查它?在该类型的所有实例中?
    • 我没有答案,我不得不承认这可能是不可能的......如果我能掌握它,我会回到这里:-/
    【解决方案2】:

    您的问题目前无法解决。委员会正在考虑如何推断连续内存访问。问题在于 iterator_category 不是特征(尽管它位于 iterator_traits 中);它是一种临时类型。它不能在不破坏现有代码的情况下进行子类型化。 (初学者的错误,嗯?)委员会已经认识到了这个烂摊子。最近的讨论说明了一切 -> How to deduce contiguous memory from iterator

    【讨论】:

      猜你喜欢
      • 2010-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-19
      相关资源
      最近更新 更多