foreach使用 引用傳遞過程

2021-07-13 10:30:56 字數 504 閱讀 6088

$arr = array('1','2','3');

foreach($arr

as$key=>&$value){}

foreach($arr

as$key=>$value){}

var_dump($arr);

輸出的結果居然是:

array(

0 => string

'1'1 => string

'2'2 => &string

'2')

在foreach($arr as $key=>&$value) 陣列遍歷到最後,引用關係並沒有斷開,這時等同於 $value與 $arr 的最後乙個單元即 $arr[2] 引用。

再到 foreach($arr as $k=>$value),$value的值一直隨陣列單元的值變,由於引用關係沒有斷開,$arr[2] 的值也跟著變化。一直到$arr遍歷完,這時$value的值為2,所以$arr[2]值也為2。

foreach之引用 的使用

廢話不說,上 arrayname array 0 array 1 houzi 2 xiaogou 1 array 2 houzi 3 xiaogou var dump arrayname foreach arrayname as key value var dump arrayname exit 結...

foreach 引用傳值

foreach 引用傳值 foreach arr as key vo 這樣我們就完成了對陣列元素新增name屬性和age屬性了,在上面的寫法中,如果我們不填寫 符號,還可以使用下面的辦法來新增屬性,那就是 arr key name 張三 arr key age 20 舉例子 將data1中的1,4,...

for each如何傳遞多個引數

我們在用vector這個容器的時候是不是經常會用到for each,然而,很jb錘子的是什麼呢,它只能傳遞乙個引數。這就有點侷限性了,不過,解決辦法總是有的,stl這個標準庫和另乙個標準庫一起用就可以了,那就是boost這個標準庫,這個庫裡面有乙個函式bind 它的作用就是繫結函式,引用一下 inc...