When you want to create secondary addresses, rather than using command "ip address secondary", use these sub-interfaces. You may need secondary address on an interface for instance when you want to overcome discontiguous subnet problems, in classful routing protocols.
I havenot seen any implementations of these sub-interfaces in any design though.
Thanks.