0
我正在尝试创建basic_path的一级深度子路径(data/images/lol.png
- >images/lol.png
)。是否可以从一系列路径迭代器或子路径创建Filesystem TS basic_path?
我尝试了一些像std::path{ ++path.begin(), path.end() }
,但范围构造函数显然需要string_type::iterator
s,而不是basic_path::iterator
s。
是否有可能使用basic_path
方法来做我需要的,或者我将不得不使用像std::accumulate(++path.begin(), path.end())
(相当低效的imho)之类的东西?
我courious与积累你的问题是什么。无论如何,你似乎没有其他选择。在性能方面,我认为考虑到大多数时间少于200个字符的路径并不算太坏。 – henje
当然,但在性能方面它仍然是一个较慢的类(O(1)vs O(logn)分配在最坏的情况下),复杂性明显较慢(O(1)与O(n)在最坏的情况下)。 就我所知,路径迭代器的构造函数是微不足道的,所以它对我来说很奇怪,它是缺少的。另外从我公认的不好的内存中,它也是带有迭代器的标准库中的第一个实例,它没有构造器来接受这些迭代器。 – GhassanPL