newを使わずに、仮想関数テーブルをセットする方法はありますか?

独自のalloc関数で確保したメモリにクラスを割り当てたいのですが、
newかローカル宣言するしか仮想関数テーブルをセットする方法が
ないみたいで、今はこうやっています。
{
//newでないので、この時点ではテーブルがセットされない。
ClassA* a = my_alloc();
  //ローカル宣言したオブジェクトをコピーすることでテーブルをセットする・・・
ClassA temp_a;
memcpy(a, &a, sizeof(a));
}
グローバルnewをオーバーロードするという手もありますが、大掛かりに
なってしまうので、仮想関数テーブル「だけ」をセットする
やり方があればご教授ください。