私は C++ SDL ゲーム エンジンを作成しています。画像やその他のリソースは実行可能ファイル内に保存されていないため、実行可能ファイルのパスを知ることが重要です。それらは別のフォルダー ("res/") にあります。
Linuxでは、実行可能パスにcdして実行可能ファイルを実行するシェルスクリプト「rungame.sh」を使用しています(「./」を使用して実行可能フォルダーを参照します)。ただし、これは「醜い」アプローチであると考えており、Windows と互換性を持たせたいと考えています。
また、現在のアプローチは、一部のコマンド ライン引数の意味を変更する可能性があるため、あまり良くありません。
実行可能ファイルの現在のパスを取得するためのクロスプラットフォーム (*NIX、Windows、および Mac OS X) ソリューションが必要です。ゲームパス/実行ファイル名は変更される場合があります。
私の問題を解決する最もクリーンな方法は何ですか (できれば std::string を使用し、プラットフォームに依存する API をできるだけ少なくします)