Volunteer photography was one of the ways I originally started building my portfolio. Non-profits welcome volunteer photographers. I've suggested this to aspiring photographers, but I don't think any have taken my advice. I think it's tempting to want to jump into being paid for photography work, but everything stems from a solid portfolio. Ideally one does not have to include mediocre photos in to add quantity to the portfolio. I didn't launch my business until I felt I had a good number of photos in my portfolio, all of which were my best work.
However, it's not a way to build contacts (I've yet to have a photo session scheduled as a result of my volunteerism). I could shove my postcard into the hands of everyone I photographed, but how annoying would that be? To me, that's not the point of volunteer photography anyways. Besides practice and portfolio, volunteer photography is good for karma.