2013-06-13 5 views
0

Какая польза от статической функции inline? Вместо того, чтобы использовать одну и ту же функцию в двух файлах; является ли их любое использование статической функции?Встроенная статическая функция и статические переменные

inline static int func(int a) 
{  
    static int b;  
    printf("Hello World !\n");  
    return b; 
} 

ответ

1

inline всегда только намек на компилятор, который вы хотите функцию встраиваемой, а не с именем нормально. Однако не стоит обращать на это внимание.

static делает вашу функцию доступной только для текущей единицы перевода. Это полезно для написания вспомогательных функций, функциональность которых вы не хотите экспортировать, например. Или, как вы говорите, если по какой-то причине вам нужно использовать одно и то же имя функции в двух единицах перевода.