if your site get loads of traffic from specific search terms, google maybe generates sites links automatically.
You need to have a good structure. Sitemaps help and breadcrumbs help a lot too. There are several theories of how they are formed, but it's all automated and those are the two key items to work on for your site to get sitelinks.
Sitelinks are automatically generated by Google. It happens only when you have a steady #1 rank for a keyword.
And once you get the sitelinks, you can use Google Webmaster Tools to remove certain ones that you would prefer not be listed as sitelinks. That will give other, more desirable links a chance to take their place in your sitelinks. I've done a little tweaking like that in my Google Webmaster Tools, and I'm quite satisfied with the 8 sitelinks Google gives me.
I think no one can give you a clear answer because its very complicated and its a secret that no one could find the answer of it. but as i think high quality websites with high traffic are more eligible for having Site Links.