2016-07-12 22 views
0

是否有更多的「C++風格」寫一個方法來改變現有的數組?在C++風格的方法中更改現有數組?

void Util::sevenColors(const float* color1, float* color2 , unsigned int size) 
{ 
    for(unsigned int i=0; i<size; i++) 
    { 
     color2[i] = color1[i] * 7.0f; 
    } 
} 
+3

「C++風格」應該使用'std :: array'或'std :: vector'。 – songyuanyao

+0

@songyuanyao,請添加作爲答案,我可以接受它。 – Danijel

回答

4

只需用std::transform以避免生環,可以是多個C++ - ý

void Util::sevenColors(const float* color1, float* color2 , unsigned int size) 
{ 
    std::transform(color1, color1 + size, color2, 
        [](float in) { return 7.0f * in;}); 
} 

如果該存儲器是動態管理,可以考慮使用std::vector代替生陣列。