In juce_DirectoryIterator.h it is claimed that: "If you may be finding a large number of files, this is better than using File::findChildFiles()..." but File::findChildFiles currently uses DirectoryIterator. I guess that the documentation needs to be updated ;-)
No - that's correct, although maybe not very well explained. The difference is that you use DirectoryIterator as an iterator, so you can stop at any time, whereas with findChildFiles, you need to wait until the entire thing has finished scanning before you get the results.
Ok. Efficiency comes from the possibility to break the loop (and avoid the Array machinery). I thought there was something more that you have backpropagated to the implementation of juce_file.h without changing accordingly the documentation. Thanks for explanations.