3 ms·
boost::range can makes a bit less verbose: std::string type("foo"); auto range = channel_widgets | filter([type](const std::shared_ptr<Widget> &w) {
by dfbrown 14y ago
boost::range can makes a bit less verbose:
std::string type("foo");
auto range = channel_widgets | filter([type](const std::shared_ptr<Widget> &w) {
return w->getType() == type;
});
if (range) {
std::string target_widget = *range.begin();
std::cout << "widget found." << std::endl;
} else {
std::cerr << "widget not found" << std::endl;
}