2014-09-26 28 views
0

我已經看到了這樣的自動循環跳過一些指標陣列

float MyFloat[30]; 
for (auto i : { 0, 1, 4, 5, 18, 19, 26, 27 }) 
    MyFloat[i] = 100.f; 

一些代碼,這是否意味着它只能設置上市指數的浮動?

回答

0

是的,i將採取初始化列表中的值。

+0

我知道我在做什麼,只是不確定是否要跳過數組索引2,3,6,7,8 ...... – Nathan 2014-09-26 16:36:22

+1

@Nathan是的,它們仍然未初始化 – 2014-09-26 16:37:16

0

是的,你是騎自行車在整數的initializer list,即std::initializer_list<int>

一個std :: initializer_list對象被自動創建時:

  • 一個 支撐,初始化列表是用於列表初始化,包括 函數調用列表初始化和賦值表達式

  • 一個 支撐,初始化列表勢必汽車,包括在遠程for循環

不在列表中的內容將保持未初始化。