Чтобы ответить на ваши вопросы: да, да, и оператор индекса. Это все стандартный синтаксис C ++.
Не зная библиотеки, о которой идет речь, класс может выглядеть примерно так:
class db_Odb
{
public:
std::unordered_map< std::string, odb_Step >& steps();
// ...
};
Итак, odb.steps()
возвращает индексируемый объект (здесь я использовал хеш-карту), а затем мы ищем ключ в нем, добавляя ["Step-1"]
, который вызывает индексный оператор карты и возвращает ссылку на один экземпляр odb_Step
в этой карте.