以下のための(自動X:NUMS)

class Solution {
public:
    int findDuplicate(vector<int>& nums) {
        int n = nums.size() - 1;
        int l = 1, r = n;
        while (l < r){
            int mid = l + r >> 1;
            int cnt = 0;
            for (auto x : nums)
                if (x >= l && x <= mid)
                    cnt++;
            if (cnt > mid - l + 1) r = mid;
            else l = mid + 1;
        }
        return r;
    }
};

上記のコードの
for (auto x : nums)
役割は、反復コンテナすべての要素であり、一時的な名前の各要素がXであり、以下のコードと等価です
for (vector<int>::iterator iter = nums.begin(); iter != nums.end(); iter++)

おすすめ

転載: www.cnblogs.com/lihello/p/11520757.html