Recursive generator in C++
问题 I have a vector of size = N where each element i can have values from 0 to possible_values[i]-1. I want to do a function that iterates me through all those values. I was able to do that in Python using a recursive generator: def all_values(size,values,pos=0): if pos == size: yield [] else: for v in xrange(values[pos]): for v2 in all_values(size,values,pos+1): v2.insert(0,v) yield v2 possible_values=[3,2,2] for v in all_values(3,possible_values): print v Example output: [0, 0, 0] [0, 0, 1] [0,