Czy ktoś mógłby mi powiedzieć, jaki jest cel deklarowania funkcji statycznych poza zajęciami? Jaka jest różnica między tymi 2? Czy są jakieś korzyści z używania statycznego w tej sytuacji?Funkcje statyczne poza klasami
static void someRandomFunction();
int main()
{
someRandomFunction();
return 0;
}
i
void someRandomFunction();
int main()
{
someRandomFunction();
return 0;
}
Czy są jakieś problemy, jeśli użytkownik korzysta z nieanonimowego obszaru nazw w tym przykładzie (zachowując "static")? – Hydren
Nie. "Statyczny" zachowuje funkcję w zakresie plików tylko z wewnętrznym łączeniem. Wyszukiwanie nazw w pliku nadal będzie się odbywać zgodnie ze zwykłymi regułami przestrzeni nazw. Ale, jak zwykle, uważaj na naruszenia ODR w tym przypadku. –