The following code compiles, runs, and gives the result as if range is being converted to bool via range.empty(). Is it actually what happens? I'm really not comfortable enough in navigating Range-v3 headers, so I'm asking this question here.
#include <iostream>
#include <range/v3/view/take.hpp>
#include <range/v3/view/drop.hpp>
#include <vector>
int main() {
std::vector<int> v{1};
if (auto range = v | ranges::views::take(1)) {
std::cout << "take" << std::endl;
}
if (auto range = v | ranges::views::drop(1)) {
std::cout << "drop" << std::endl;
}
}
Aucun commentaire:
Enregistrer un commentaire