我正在查看是否有perl速記,似乎有總是是一個perl速記,如果定義了值則返回。我在考慮一些常見的情況,我需要檢查一些散列以查看是否存在某些內容,如果存在則返回,否則返回值。我可以做這樣的事情:如果定義了perl是否有返回語法?
$element = %seen_elements{$key};
return $element if defined $element;
#element doesn't exist so make it
return generate_element($key, $seen_elements);
有沒有第二行的簡寫,避免我不得不兩次引用元素?大多數語言我不會問,但是在perl中有太多的語法糖,我很好奇,如果他們已經爲這樣一個小但常見的用例做了一個。
您是否意識到您通常不必顯式創建散列元素?根據散列應該包含的內容,你可能只能寫'return $ seen_elements {$ key} ++' – Borodin
或者'return $ seen_elements {$ key} // = 1' – Borodin