我是新來的。我不明白if語句:i == 0,它消除了重複。怎麼運行的?謝謝。有人可以解釋這個C++代碼嗎?
vector<string>words;
for (string temp; cin >> temp;)
words.push_back(temp);
cout << "Number of words:" << words.size() << '\n';
sort(words);
for (int i = 0; i < words.size(); ++i)
if (i == 0 || words[i - 1] != words[i])
cout << words[i] << '\n';
只有當單詞[i - 1]!=單詞[i]' - 它與前一個不同時,它纔會打印單詞。 'i == 0'只是保護 - 因爲索引0沒有前一個。 –
請選擇[一本好的初學C++書](https://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list)。 [[使用名稱空間標準;'是一個不好的做法](https://stackoverflow.com/questions/1452721/why-is-using-namespace-std-considered-bad-practice)! – tambre
在調試器中使用一組已知輸入字符串(包括一些不止一次使用的單詞)運行它,並查看在單步執行最後一個循環時發生了什麼。 – WhozCraig