マクロを使用せずに、2つの異なるデータ型に1つのコードを使用したいと思います。私はこのようなことを試みましたが、完全な解決策を思いつきませんでした。
void func(bool istype1, void *ptr)
{
void *t1;
if(isType1)
t1=static_cast<type1>(ptr);
else // isType1 == false means data type 2.
t1=static_cast<type2>(ptr);
...
...
...
}