Dinamik olarak bir işlev oluşturmak için makro (C/C++) oluşturmaya çalışıyorum. Temelde adı "MyClassA" bölümünde değişen bir işlev var. Ayrıca, tartışmalar makro tanımdan geçirilmelidir. Daha sonra, fonksiyonun içinde değişken bir metot çağrısı vardır, örneğin değişken bir dizi tartışma ile birlikte "methodForClassA".Makrolarla işlev adlarının dinamik oluşturulması
void Java_somepackage_MyClassA_fixMethod(int arg1, int arg2) {
Toolbox.methodForClassA(arg1, arg2);
}
Bu kalıpta 40'tan fazla işlev var. Elbette el ile veya bir komut dosyasıyla oluşturabilirim. Ama bunu bir makro ile yapmak da mümkün mü? (Çalışmıyor) böyle örnek bir şey için: Bir "(" dinamik aşağıdaki nerede bazı deneyler ve dokümanlar okunmasından sonra
# define MACRO_TEST(classname, methodname, args, argsMethod) void Java_somepackage_##classname_fixMethod(##args) {\
Toolbox.##methodname(##argsMethod);\
}
MACRO_TEST(MyClassA, methodForClassA, args1, args2)
, sadece desenleri ile "dinamik" işlevi adları oluşturmak nasıl bulabiliriz kısmı:.
#define FUNCTION(name, x) int func_##name() { return x;}
FUNCTION(test, 2);
Selamlar,