Если мы говорим «Лучший», я добавляю Синатру для Руби и Нэнси для .Net. На 100% основано на моем субъективном мнении и личных предпочтениях. Они мои лучшие , основанные на простоте использования и «факторе счастья».
Я не думаю, что вы можете это контролировать. Поскольку вы должны опубликовать файлы заголовков для библиотеки, тогда вы будете раскрывать весь интерфейс, даже если не через intellisense.
Однако вы должны думать, что есть другие инструменты, делающие то же самое, используемые многими разработчиками (например, Visual Assist).
Если вам нужно скрыть некоторые детали реализации, лучшим решением будет применить идиому pimpl и предоставить в файлах заголовков классы интерфейса с «общедоступными» используемыми методами.
Классы реализации будут такими. включается только из скомпилированных файлов cpp, и только пересылается, объявленных в общих файлах заголовков.