The question was answered in the comments.
Is tab completion a feature of the particular shell the application is being executed from?
yes
What are the basics I need to know about getting my application to support tab completion (particularly in C++)?
basically learn more about bash-completion