Всем привет)
Создал библиотеку, который имеет такую функцию:
float getFloat(){
result_float = (float)i++; //для теста, потом здесь будут данные, которые считываются с прибора
return result_float;
}
Создал класс для работы с библиотеками:
class ConnectComDevice
{
private:
float result;
public:
void getFloat()
{
QLibrary lib ( LIB_NAME );
if( !lib.load() ) {
qDebug() << "Loading failed!";
}
typedef float ( *outputFloat )();
outputFloat outputFloatd;
for (int i=0; i<5; i++)
{
outputFloatd = ( outputFloat ) lib.resolve( "getFloat" );
if( outputFloatd ) {
qDebug() << outputFloatd();
}
}
}
};
объявляю два объекта класса:
ConnectComDevice connectDevice();
connectDevice.getFloat();
ConnectComDevice connectDevice1();
connectDevice1.getFloat();
Вроде бы как должен получить:
spoiler0
1
2
3
4
5
0
1
2
3
4
но получаю:
spoiler
0
1
2
3
4
5
6
7
8
9
т.е работает как один класс, а мне нужно чтоб они работали независимо.
Как это можно реализовать?
p.s:
spoilerработают независимо, если создать копию dll (first.dll second.dll) и подключиться два раза. Но это решение мне не нравится