そのコードで inline 版とマクロ版がそんなに違うのはやっぱり何かが変なんではないかと思うな ... というか inline/マクロのちがいというより std::vector<int> と int[] の違いなのか。