in Visual Basic you can find out the type of a variable with something like...
MsgBox TypeName(VARIABLE_GOES_HERE)
1 - Is there an equivalent in C++ ?
2 - What if your dealing with a pointer... can you have C++ tell you the 'type' of what it is pointing to? If so how?
3 - Finally... I guess in C++ you don't call all things represented by a uniqueName or symbol a 'variable' ... do you?
3a - For instance you could use a uniqueName or symbol to represent a constant or an object... right?
3b - And if so how do you determine the 'type' of those uniqueNames or symbols when you encounter them in the middle of some complicated 'heritage' code?
C++ has a typeid operator. If you look that up you'll find the answer to most of your questions. The general term for what you are wanting is RTTI, i.e., Runtime Type Info. Searching those terms will also lead you where you want to go. Also consider that if you are using objects you created yourself you can include a type info member you can call to return identifying information.