-3
std::string decodeMorse(std::string morseCode) {
// ToDo: Accept dots, dashes and spaces, return human-readable message
std::string decoded;
for(auto p : morseCode) {
if(p == '.')
decoded += MORSE_CODE[ "." ];
else if(p == '-')
decoded += MORSE_CODE[ "-" ];
}
return decoded;
}
這是https://www.codewars.comC++怪異循環語法
代碼提取有人能解釋一下for(auto p : morseCode)
手段? 或者也許用更復雜的方式重寫這段代碼?
http://en.cppreference.com/w/cpp/language/range-for – chris
這是一個基於'for'循環的範圍。它在C++語言標準中有解釋。考慮閱讀它。 –
自從C++ 11開始運作6年後,閱讀教科書的時間已到。 – Slava