ポインター magikry を使用して、バイト データをファイルに書き込む次のメソッドを使用して C++ クラスを保存したいと考えています。
result Osp::Io::File::Write (const void *buffer, int length);
パラメーター:
buffer
— 書き込まれるバイトデータを含むユーザー提供のバッファへのポインタlength
— バッファー長 (バイト単位)
例外:
E_SUCCESS
— メソッドは成功です。E_INVALID_STATE
— ファイルはまだ開かれていません。E_ILLEGAL_ACCESS
— ファイルが書き込み操作用に開かれていないか、権限が不十分なためにアクセスが拒否されました。E_INVALID_ARG
— 次のいずれかの状況が発生しました。- 指定されたバッファにはヌル ポインタが含まれています。
- 指定されたバッファー長が 0 以下です。
- ファイル ハンドルが無効です (ファイルが別の方法で閉じられているか、メモリが破損しています)。
E_STORAGE_FULL
— ディスク容量がいっぱいです。E_IO
— メディアが突然排出されたり、ファイルの破損が検出されたりして、予期しないデバイス障害が発生しました。
何らかのバッファリングがあるとは想定したくありませんが、各バイトがフラッシュのブロック全体を書き換える原因にはならないと確信していますが、たとえば、オブジェクトへのポインタ( )によるクラス(および静的フィールドなどの他のもの*this
)