Ich habe zwei C-Projekte unter Visual Studio 2015 vorbereitet. Das erste Projekt ist einfach ein statisches Bibliotheksprojekt, während das zweite eine Konsolenanwendung ist, die die statische Bibliotheksdatei des ersten Projekts verwendet.verifizierte generierte Bibliothek für die Kapselung
Ich überprüfte die statische Bibliotheksdatei mit DUMPBIN-Tool in Windows und sah, dass es viele Variablen und Funktionen gibt, die nach außen ausgesetzt sind, was für die Einkapselungsprobleme sehr schlecht ist.
Meine Frage ist, wie kann ich sicher sein, dass ich die Funktionen, die privat sein sollen nicht offen legen. Muss ich jedes Mal mit diesem Tool überprüfen? Meine Frage deckt auch die Variablen ab. Alle meine statischen globalen Variablen sind auch nach außen ausgesetzt. Wie kann ich sie zwingen, privat zu sein?
Namen mit interner Verknüpfung sollten per Definition nicht nach außen verfügbar sein. Wenn Ihre Bibliothek aus mehreren Kompilierungseinheiten besteht, geben Sie die internen Deklarationen einfach nicht an. – Olaf