Мне нужно открыть несколько общих библиотек во время выполнения.Я не знаю их количество (количество), поэтому я использую динамическое распределение памяти:
void* handle= new void* [n]; // n refers to number of handles
handle[0] = dlopen("./fileN.so", RTLD_LAZY); // doesn't work : Error: ‘void*’ is not a pointer-to-object type
Однако, если я делаю статическое распределение, это работает -
void* handle[10];
handle[0] = dlopen("./file0.so", RTLD_LAZY); // works
Почему этокогда я получаю динамический доступ к дескриптору, я получаю ошибку?и как мне это исправить?