Я пытаюсь придумать конкретную причину, почему использовать указатель на ссылку в качестве типа возврата из функции,
, я рассуждаю так: если по неосторожности нулевое значение возвращается в ссылкувведите, что это не могло быть проверено, и могло привести к ошибкам во время выполнения
int& something(int j)
{
int* p = 0 ;
return *p;
}
void main()
{
int& i = something(5);
i = 7; // run-time error
}
, если бы я использовал указатель, я мог проверить это и избежать ошибки, возвращаемое значение указателя действовало бы как контракт кзначение должно быть возвращено.
void main()
{
int* i = something(5);
if( i != null )
*i = 7;
}
любые мысли будут оценены снова,
что бы вы использовали и почему ссылка или указатель
заранее благодарны.