Недавно я увидел пример в перегрузке оператора, где они говорили о том, как оператор + по существу является функцией с двумя параметрами.C++ Что такое использование оператора +? и какова цель?
С немного тыкать я решил посмотреть на это немного глубже и обнаружил, что вызов + как функция действительно работает, просто не так, как можно было бы ожидать ... например:
int first = 6;
int second = 9;
int result = +(second,first);//result=6
Сборки для этого
int result = +(second,first);
mov eax,dword ptr [first]
mov dword ptr [result],eax
Звонок + просто перемещает последний параметр в eax.
Может ли кто-нибудь сказать мне цель этого и/или то, что он называется?
хороший вопрос, я положу его в той же категории с (http://stackoverflow.com/questions/1642028/what-is-the-name-of-the-operator) – vsoftco
Увидев ответ, я думаю, что это супер справедливо. Я чувствую себя полным идиотом. – jhbh
На самом деле я не был ироничным :) Это справедливый вопрос, и я уверен, что многие люди впервые вводят в заблуждение эту забавную форму, особенно если она имеет некоторый функциональный фон программирования. – vsoftco