4

アーカイブ ファイルに C ライブラリがありますclib.a。そのための C++ ラッパーを作成しました。cpp.oこれをスタティック ライブラリとして使用したいと考えています。

ar cTrvs cppwrap.a clib.a cpp.o

これにリンクするコードはclib.a、正しいヘッダーが含まれていない限り、からのものを直接使用することはできません。しかし、誰かが偶然に適切なプロトタイプを作成した場合、たとえば、 のどの定義が適用される void myCoincidentallyNamedGlobalFunction()心配です。myCoincidentallyNamedGlobalFunction

からのシンボルは でclib.aのみアクセスする必要があり、cpp.oにリンクされてcppwrap.aいるものではないため、衝突の可能性がないようにそれらを完全に非表示にする方法はありますか (したがって、clib ヘッダーを含めても失敗します)。

4

1 に答える 1