私はオブジェクトにメモリを割り当て、そのコンストラクタ - メモリアロケータ - を呼び出すメソッドを持っています。バリデーションテンプレート関数への参照渡しと値渡しの組み合わせが有効ですか?
template <class T, typename... Arguments>
inline T* AllocateObject(Arguments... args) { return new (InternalAllocate(sizeof(T))) T(args...); }
この関数を使用して値渡しと参照渡しを組み合わせることは有効ですか?たとえば、いくつかのバイナリといくつかの参照によってコンストラクタを持つクラスを割り当てます。それはコンパイルされますが、それが厄介な副作用を持っているかどうかはわかりません。
は 'T(STD)が(argsを前方:: .. )、それ以外にもあなたは大丈夫でしょう。 –
nijansen