IMO, there are several levels of homelessness.
1) Those that have lost jobs and nearly everything they have, due to a job loss or such, and want nothing but getting back on their feet. I've been there, done that, lost the dang t-shirt. It was the most humbling experience I've had in my life.
2) Those that have lost everything due to drugs. They literally cannot stop their habit without some sort of outside help. Face it, certain drugs have such a hold on people that they cannot stop without professional help (Meth is the biggest one I can think of).
3) Those that just don't care and prefer to live on the streets, without help. In Oregon, there are those that live on the streets while begging for money every day. They wear better shoes than I do (always a great indicator), smoke, etc. If you talk to an honest bum once in awhile, you'll learn that some of them make upwards of $30k in cash, each year, just by begging (dead serious). To those that see a homeless guy or gal in a location on a daily basis - just strike up a conversation with them about their situation. Some are completely honest, the others will lie to your face.
I have a feeling the above group was the 3rd level.
On a side note, for those bums screaming at people that they're a Vet and need help - ask them if they've contacted the VA and if they offer an excuse, ask to see their VA card before you offer help to a "fellow soldier"... I chased off a bum in a wheelchair hanging out around a Federal building after he kept bugging all the Vets coming in and out doing just that. He hasn't been back in over a month.
My opinions are based off of where I work. I drive by the 3rd group, where they sleep, daily, I deal with the 2nd and 3rd groups daily, outside the building I work at, and I pass by the Soup Kitchens on the way home - daily. If you've seen the TV Show "Leverage", you've seen where I drive through since they bring a production crew in about every other month.