You can turn any or all of the IntelliSense features off. To turn the IntelliSense features on or off, first select Options from the Tools menu. Expand the Text Editor tree in the left pane of the dialog that displays by clicking the [unfilled] symbol, then click the [unfilled] symbol alongside C/C++. Click on the Advanced option and you will see the IntelliSense options displayed in the right pane. Setting an option to false turns it off. One feature I recommend that you do change is the one named Member List Commit Characters. With the default list of characters as the value for this feature, you'll find that normal entry of code will have spurious things inserted. For example, typing the sequence i = n; will result in i = namespace; which can be irritating to say the least. I suggest that you delete the entire set of characters in the value column for this feature.
It doesn't seem to automatically insert things for me.
With an object, typing . will bring up a list of that object's members.
With a pointer to an object, typing -> will bring up a list of that object's members.
Those are the characters which, when typed, cause the currently selected member to be inserted textually into the code. For instance:
1 2 3 4 5 6 7 8 9 10 11 12
struct A
{
void compare() ;
void comp() ;
};
int main()
{
A a ;
a.c_
}
(The underscore represents the position of the cursor)
If you type what's on line 11 with the rest of the code in place, intellisense will present a list of members with comp highlighted. If, at this point, you press any key that is a member list commit character the compiler will go ahead and complete text for you. For instance if you type the "a.c(" on line 11 You will end up with:
1 2 3 4 5 6 7 8 9 10 11 12
struct A
{
void compare() ;
void comp() ;
};
int main()
{
A a ;
a.comp(_
}
(Again, the underscore represents the placement of the cursor.)
This is really off topic here though. It has nothing at all to do with C++.