0
私は答えのstackoverflowを検索しますが、近い一致を得ることはできません。私はドライブの内容をシリアライズしています。私は操作のためにboost :: filesystem :: pathを使用しています。 Windows OSにパス情報を保存するには、最大(300はちょうど公称値)の文字長が必要です。フォルダーのパスのシリアル化の最大文字長
struct raw_event
{
friend std::ifstream& operator >> (std::ifstream& infile, raw_event& raw);
friend std::ofstream& operator << (std::ofstream& outfile, raw_event& raw);
private:
char path_[300];
//
};
対象のオペレーティングシステムは何ですか?なぜ 'std :: string'を使わないのでしょうか? – user4581301
@ user4581301:Windows OS。私はstd :: stringを使用していますが、シリアライズではPODを使用してゴミを避けることを好みます – ark1974
Unicode APIを使用していない限り、Windowsの最大パスは260です。それから32767です。Boostが何を使用しているのかは分かりませんが、常に32kを割り当てることは私にとっては馬鹿だと思われます。 – user4581301