将 borrowed_iterator<reverse_view<T>> 转换为 borrowed_iterator<T>
Convert borrowed_iterator<reverse_view<T>> to borrowed_iterator<T>
我有缓冲区:char line[1024]
,其中包含从文件中读取的一行。
我想在其中找到最后一个换行符 (\n
),然后将其之前的所有 ,
替换为
(space)。
我想出的代码:
const auto end = rng::find(line | rng::views::reverse, '\n'); // Find last occurrence of `\n`
rng::replace(line, end, ',', ' '); // Replace all `,` with ` ` before it
但它不起作用,因为 line
的类型是一个简单的指针,而 end
是一个 borrowed_iterator<reverse_view<T>>
.
我有缓冲区:char line[1024]
,其中包含从文件中读取的一行。
我想在其中找到最后一个换行符 (\n
),然后将其之前的所有 ,
替换为
(space)。
我想出的代码:
const auto end = rng::find(line | rng::views::reverse, '\n'); // Find last occurrence of `\n`
rng::replace(line, end, ',', ' '); // Replace all `,` with ` ` before it
但它不起作用,因为 line
的类型是一个简单的指针,而 end
是一个 borrowed_iterator<reverse_view<T>>
.