У меня есть вопрос об использовании оператора "//", мой тестовый код выглядит следующим образом:
perl -e '@arr1=();@arr2=(1,2,3);@arr3=defined(@arr1)[email protected]:@arr2;print "[@arr3]\n"'
[1 2 3]
perl -e '@arr1=();@arr2=(1,2,3);@[email protected]//@arr2;print "[@arr3]\n"'
[0]
perl -e '$v1=();$v2="123";$v3=defined($v1)?$v1:$v2;print "[$v3]\n"'
[123]
perl -e '$v1=();$v2="123";$v3=$v1//$v2;print "[$v3]\n"'
[123]
мой вопрос: почему использование оператора "//" дает те же результаты, что и использование "defined()?:" на скалярном, но не массиве (или хэше)?
Спасибо!!!