0
我正在使用php,我遇到了困境。我需要我的雙向鏈表可以訪問交叉函數。我爲了解決這個問題一直在做的是在參數中明確地傳遞變量的地址。這種方法是否有效?它看起來類似於這樣:PHP訪問SplDoublyLinkedList交叉函數
function foo(&$list){
$list->push('a');
$list->push('b');
$list->push('c');
$list->push('d');
$list->setIteratorMode(SplDoublyLinkedList::IT_MODE_FIFO);
for ($list->rewind(); $list->valid(); $list->next()) {
echo $list->current()."\n";
}
}
此外,在一個側面說明,我能夠通過簡單地做下面的存儲對象的鏈接列表?
function foo(&$list){
//assuming Pie is a class with a method get_pie_flavor()
$myBar = new Pie('cherry');
$list->push($myBar);
$list->setIteratorMode(SplDoublyLinkedList::IT_MODE_FIFO);
for ($list->rewind(); $list->valid(); $list->next()) {
echo $list->current()->get_pie_flavor();
//will this print 'cherry' assuming get_pie_flavor is written correctly?
}
}