У меня есть функция, которая работает с куском данных (скажем, int), и я хочу изменить его на месте, передав ссылку на valule. Таким образом, у меня есть функция: void myFunction(int *thing) { ... }. Когда я его использую, я называю это следующим образом: myFunction(&anInt).
Поскольку моя функция часто называется (но из многих разных мест), меня беспокоит ее производительность. Причина, по которой я переделал ее в функцию, - это тестируемость и повторное использование кода.
Будет ли компилятор иметь возможность оптимизировать функцию, вставляя ее для работы непосредственно с моей переменной anInt?
Надеюсь, вы ответите на этот вопрос в духе, в котором он спросил (т.е. я преждевременно не беспокоюсь об оптимизации, мне любопытно ответить). Точно так же я не хочу превращать его в макрос.