Здравствуйте, alex_public, Вы писали:
_>Это будет нарушение принципов C/C++ — лишние накладные расходы. К тому же зачем оно, если у нас имеется std::array? )
А неявная передача указателя this — не лишние накладные расходы? В ту пору std::array не было, а с std::vector была небольшая проблемка — списков инициализации еще не придумали, и заполнять содержимое контейнера приходилось руками:
vector<string> items;
items.push_back("I'v");
items.push_back("been");
items.push_back("expecting");
items.push_back("you");
items.push_back(",");
items.push_back("mr");
items.push_back("Stroustrup");
call(items);
Сравни с:
string items[] = {"I'v", "been", "expecting", "you", ",", "mr", "Stroustrup"};
call(items); // Опасно, ведь call(), увы, не знает размер переданного массива
// А если бы знал - было бы безопасно!
_>Не, это другой контейнер, хранящий много экземпляров. А у optional аналогия как раз ближе к какому-нибудь unique_ptr или future. )
Не согласен, на том и остановимся
Люди! Люди, смотрите, я сошел с ума! Люди! Возлюбите друг друга! (вы чувствуете, какой бред?)