Desafortunadamente, esto solo funciona para cualquier cosa que usted haga, pero es algo que debe tener en cuenta si utiliza muchas de sus propias bibliotecas.
Una cosa que hice para cualquier biblioteca que hago es intentar engañar a intellisense con un #define. En mi declaración de la clase en el archivo de cabecera para cualquier biblioteca que estoy haciendo, me rodeo toda la parte privada en un espacio #ifdef, por ejemplo
#ifdef MYCLASS_SHOW_PRIVATE_VARIABLES
private:
int hideThisVariable;
float noShow;
void HiddenIncrementFunction();
#endif
Luego, en la sección de código de la clase donde necesito proporcionar definiciones para todos los métodos, en la parte superior antes de incluir el archivo con las declaraciones de clase, agrego
#define MYCLASS_SHOW_PRIVATE_VARIABLES
de esta manera, los miembros privados son accesibles solamente a los métodos que se implemente para su clase en el archivo de origen. Cualquier cliente que use esta biblioteca no podrá ver las variables privadas a través de intellisense, a menos que, por supuesto, definan su directiva preprocesador.
@Keoki Voy a intentar un poco más difícil :) – aligray
¿Está tratando de evitar que esto suceda cuando los clientes usan su código? Dudo que eso sea posible. Si se trata de una configuración en MSVC, todo el que use su API debería tenerlo activado. – RageD
@Keoki: existe con algunas soluciones de terceros de Intellisense como Visual Assist X, pero no está integrado en Visual Studio. – ildjarn