почему boost :: call_traits :: param_type - это «const double &», а не «double»

Я использую код" boost :: call_traits :: param_type "на программе win32 @ Windows 7. К моему удивлению, это не" double ", а «const double &».

Я думал, что все примитивные типы подходят для использования «передачи по значению» для параметров функции, разве это не здравый смысл? Потому что многие люди будут использовать is_pod для определения использования ссылки или нет, не так ли? это?

6
задан JQ. 29 November 2011 в 05:10
поделиться