Просто пытаясь привести в порядок программу и задавался вопросом, может ли кто-нибудь прокормить меня каким-то синтаксическим сахаром в отношении вызова функции-члена в одной очереди несколько раз в одной строке.
Например, изменение:
queue<int> q;
q.push(0);
q.push(1);
к чему-то вроде:
q.(push(0), push(1));
//or
q.push(0).push(1);
Я знаю, что это выглядит немного смешно, и это не практично. Но если я хотел бы сократить небольшую часть кода, как это, есть ли возможность сделать это? Из того, что я читал до сих пор, возможно только цепочку методов, когда функция имеет возвращаемое значение не void
.
Конечно, это вариант:
q.push(0); q.push(1);
Но я стараюсь избегать q
там дважды. Снова... синтаксический сахар:)
Цель здесь заключается не в инициализации, а в конденсировании количества раз, когда объект/контейнер воспитывается в блоке кода. Причина, по которой я ссылаюсь на очередь, состоит в том, что она динамическая.