現在、私は書いているプログラムに C++ を使用しており、Old v New に関するクエリがあります。
オンラインで見ると、C++ 構文を使用してファイルを開く人がいます。私はC++に移行しているので、時代についていく必要がありますが、Cの方法を使用する方が良いですか、それとも後者を使用する方が良いですか? 私は考慮しています:
- 安全。
- スピード。
- メモリ使用量。(私はこれについて考えがあるかもしれないと思いますが。)
ありがとうございました。
プレーン C もプレーン C++ も、OS のセキュリティ機能にアクセスできません。Windows および Linux/UNIX には、ファイル システムに関連するセキュリティ機能があり、ファイル アクセス権を設定または照会するには、それらを使用する必要があります。
C で書いている場合でも C++ で書いている場合でも、セキュリティはあなたの責任です。どちらの言語も、入力の検証やエラー チェックなどから解放されません。
ファイル I/O 速度は、異なるバッファリング モードまたは異なるサイズのバッファを使用しない限り、同じコンパイラを使用する同じプラットフォームでほぼ同じになります。ファイル I/O 関数で暗黙的に使用されるメモリの量についても同じことが言えます。
C++ で記述している場合は、通常、C++ の I/O 関数を使用する必要がありますが、それを使用してできないことがあります (たとえば、OS 固有の機能にアクセスできないため、C++ によって提供されるプレーンな C 関数を使用せざるを得ない場合など)。お使いの OS)。
C++ 標準ライブラリが提供する機能を使用します。速度やメモリに問題が発生した場合にのみ、プロファイリングを開始し、他のオプションを検討してください。