Эта оптимизация, по-видимому, применима только к «маленьким» встроенным типам, в соответствии с doc .
. При быстром взгляде на источник , она выглядитПод «малыми» типами понимаются те, которые удовлетворяют sizeof(T) <= sizeof(void *)
.На 32-битной машине это, очевидно, не включает double
.
В некоторых случаях может быть лучше передать параметры как double
, а не double const&
, но, как всегда, вы должны иметьдля тестирования и тестирования ...