если я:Функции внутри функции
void foo() {
if(..) {
inline int baa(..) { return .. }
} else {
inline int baa(..) { return .. }
}
}
И позвони: baa(..)
внутри foo
функции я получаю implicit declaration of 'baa'
. Но если я делаю объявление прототипа: inline int baa(int);
ошибка inline function 'baa' declared but never defined
. Я использую встроенную функцию для замены макрофункции.
Как это исправить?
EDIT лучше: может кто-нибудь объяснить, почему компилятор утверждает вышеупомянутое сообщение об ошибке?
дубликата: http://stackoverflow.com/questions/957592/functions-inside-functions-in-c –