免責事項: C または C++ のいずれかの純粋主義者がこれを好まないことはわかっています。仕事は成し遂げる必要があります。
C ライクなコーディング (ただし、もちろん C++ コンパイラでコンパイル) をより楽しくするために、C++ の非 OOP 関連機能をできるだけ多く使用したいと考えています。最終製品は、C プログラムに比較的簡単に組み込むことができる C ライクなライブラリ (および付随する実行可能ファイル) である必要があります。
たとえば、私がひどく必要とするのは関数のオーバーロードです。クライアント コード (C で記述) はlibffiなどを使用してマングルされた名前を取得できるので、関数を呼び出すことができると思います。
その他の優れた機能は、デフォルト値とおそらくテンプレートです。
C++ ライブラリ (C のみ) は使用せず、例外も RTTI もオブジェクトも使用しません。
- これらの制限の下で使用できる、C にはない C++ 機能の完全なリストは何ですか? また、可能な限り簡単に機能させるための一般的なライブラリと手法は何ですか?
- 何に注意すればよいですか?
私は関連する質問について知っていますが、私が言ったように、グルーコードは必要ありません(おそらく、クライアントが C++ を使用しない場合に行う必要があるマングリング部分を除いて)、そして私はOOP 機能は使用しません。私は妥協する準備ができています。