foreach

extern "C" void f9(int a){

}

#if 0
#include <vector>

using namespace std;



int main(int argc, char* *argv)
{

    vector<int> vct;
    vct.push_back(100);
    vct.push_back(90);

    for ( auto const & value : vct )
    {
        f9(value);
    }

    return 1;
}
#endif


struct B{
    int k;
    B(int z) : k(z){}

    bool operator != (const B& b){
        return k != b.k;
    }

    B operator ++ (){
         k++;
        return *this;
    }

    int& operator *() {
        return k;
    }
};

struct A{
    B begin() {return  B(0);}
    B end() {return B(3);}
};

#include "stdio.h"
int main(){
    A a;
    for (auto const &p : a){
        printf("%d\n", p);
    }
}
posted @ 2021-07-12 16:08  zJanly  阅读(45)  评论(0)    收藏  举报