Ваша функция имеет четыре параметра.
Каждый параметр должен быть передан функции.
Тот факт, что один из параметров является ссылкой, не меняет этот базовый факт. Дополнительное пространство, которое вы видите, является ссылочным параметром функции.
В этом контексте ссылка на самом деле является лишь указателем в маскировке. Когда у вас есть ссылка в локальной области, ссылающейся на объект в локальной области, большинство компиляторов C++, действительно, оптимизируют его, чтобы ссылка не занимала никакой реальной памяти.
Но вызов функции - совершенно новая игра в мяч. Функция ожидает получить ссылку на какой-либо объект. Функция не может телепатически знать, что передается ей в качестве ссылки. Независимо от того, что вызывает функция, отвечает за предоставление эталонного параметра. Само собой разумеется, что для передачи этой информации потребуется несколько байтов, а именно адрес объекта, который был передан в качестве ссылки (недавно я упомянул что-то о указателях)
Возможно, что если функция была объявлена с областью static
(без внешней привязки), и для компиляции выбран достаточно агрессивный уровень оптимизации, ваш компилятор C++ включит вызов функции и сможет оптимизировать ссылочный параметр.
Но объявление функции с внешней связью обычно приводит к тому, что компилятор не пытается выполнить встроенный вызов функции. Он продолжит работу и создаст полномасштабную автономную функцию, которая рассчитывает иметь каждый параметр, на который она имеет право.
Чтобы ответить на ваш вопрос более общим способом: стандарт C++ не требует, чтобы ссылки занимали память, но это не требует, чтобы они не должны. Компилятор C++ может свободно компилировать код каким-либо образом, если результаты верны и что они ожидаются. Если в конкретной ситуации компилятор C++ определяет, как оптимизировать ссылку, чтобы она фактически не существовала как отдельный дискретный объект, она имеет на это право. Но этого не требуется.
* Не указано * Требуется ли для хранения ссылка. Писатель-компилятор примет решение о том, как реализовать ссылку в любой ситуации –