Это не дает прямого ответа на ваш вопрос, но я бы посоветовал определить функцию geter в provider.h:
const int *getConfigProvider(void);
и в поставщике. c
const int *getConfigProvider(void)
{
static const int config_provider = 1;
return &config_provider;
}
This каким-то образом инкапсулирует реализацию для потребителя и в конечном итоге достигает того, что вы ищете.
Примечание:
В случае int
тип возврата getConfigProvider
может быть просто int
. В случае более сложного типа (структуры) лучше использовать const
указатель на него.