Het blijkt dat VS code produceert die enkel op windows zou draaien.
Natuurlijk, VS zet je C++ sources om in een programma dat op windows draait. Maar C++ zelf is geheel platform onafhankelijk (tenzij je natuurlijk allerlei windows-specifieke libraries gaat gebruiken, waar .Net tot op zekere hoogte ook toe behoert). En niets staat je in de weg om je C++ project, wat je prima kunt beheren en ontwikkelen (incl. debuggen, wel zo handig) met VS, ook op andere platforms met andere compilers/linkers te builden.
Als je voor platform-specifieke taken -zoals de GUI- een library gebruikt die ook andere platforms ondersteunt, bijvoorbeeld
wxWidgets (een doordachte, uitgebreide, solide, goed gedocumenteerde, breed ondersteunde en bovenal makkelijke en toegankelijke library), dan kun je je C++ project geheel platform-onafhankelijk houden.
De GUI-designer van VS vind ik persoonlijk niet zo fijn. Ik gebruik die zo min mogelijk, mede ook omdat hetgeen je ermee maakt toch windows-only is, en ik wil bijvoorbeeld ook Mac ondersteunen.
In theory, there's no difference between theory and practice. In practice, there is.