Может ли быть рекурсивной функция типа void?
Функция типа void
-это функция, которая не возвращает значения, вот и все.
Рекурсия - это вызов функцией себя же, и с каждым разом на определенном этапе
То, что функция является void
, еще не забирает у нее всех остальных свойств , присущих функциям, поэтому ответ - Да, может
Вы, наверное, прекращаете рекурсию снаружи? Я же обычно в самой рекурсивной функции. Вернуть значение, если оно требуются снаружи, а это не обязательно, проще всего через аргумент типа out, в C# можно ещё ref, в С++ в содержимом по переданному указателю (как в WinAPI).
Я попробую дать обьяснение без слов в примере:
Factorial(10,0,1);
public void Factorial(int max, ref int number, ref int value)
{
number++;
if(number>=max)
return;
value*=number;
Factorial(max, number, value);
}
код писал из головы не проверяя, так что могли закрастся ошибки.
Но условие выполнено -- метод возвращает void. :)
как видишь, все быть может.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Подскажите есть ли какой либо способ кэшировать данные приходящие от сервера в проекте Xamarin Forms PCL?
собственно что именно делаю, есть страница, с которой нужно получить некоторую информацию, все бы было хорошо, но часть контента подгружается...