そのため、boost :: serializationライブラリを使用しています。デフォルトのコンストラクタがないため、クラスの構築方法をオーバーライドしようとしています。これはここに示されています。私には、関数がを取り、class* t
新しく構築されたオブジェクトを指すように設定しているように見えます。私が間違っている場合、これは間違いなく私のエラーの原因です。
ただし、クラスを作成する唯一の方法は、別のクラスcreate()
関数を使用することです。つまり、例のコードから逸脱する必要があります(これは、boost :: serialization名前空間に記載されています)。::new(t)my_class(attribute);
create関数を呼び出してt
、返されたポインタと同じ値を設定しようとしましたが、の直後load_construct_data function
、およびでserialization function
、指定myClass&
されたものが't'に設定したものと同じではないため、これは機能しないようです。
:: new(t)が実行していることを実行して、create関数を使用して作成されたオブジェクトがserialize / other関数に続くようにするにはどうすればよいですか?