Форум программистов, компьютерный форум CyberForum.ru

Написать класс С++, который использует функции из библиотеки с - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ указатель this что именно он делает http://www.cyberforum.ru/cpp-beginners/thread878049.html
Вот код: #include <iostream> class test_class { public: void set_var(int a, int b) { varOne = a; varTwo = b; } test_class operator++() { varOne++; varTwo++; return *this; } int get_varOne() { return varOne; }
C++ Дана матрица 7х7, поменять местами элементы, симметрично относительно побочной диагонали #include <iostream> #include <conio.h> using namespace std; int main() { setlocale(LC_ALL, "russian"); int a; http://www.cyberforum.ru/cpp-beginners/thread878047.html
C++ УКАЗАТЕЛИ. Написать функцию, к-рая вычисляет сумму и произведение первых N чётных чисел
Написать функцию, к-рая вычисляет сумму и произведение первых N чётных чисел. ИСПОЛЬЗУЯ УКАЗАТЕЛИ!!!!!!! пОЖАЛУЙСТА. СРОЧНО НАДО! Добавлено через 7 минут помогите пожалуйстааа!!! Добавлено через 5 минут #include "stdafx.h"
Написать программу, которая вычисляет среднее арифметическое всех элементов дерева Т C++
...
C++ Определить кол-во элементов массива, которые больше среднеарифметического значения всех элементов массива http://www.cyberforum.ru/cpp-beginners/thread878000.html
Сделать программу, к-рая случайно заполняет массив А (n<30) целыми значениями. Определить кол-во элементов массива, которые больше среднеарифметического значения всех элементов массива.
C++ Как в программе подключить справку? Есть файл *.chm, подключаю его через project -> options и прописываю ShellExecute(Handle,L"open",L"Справка.chm",NULL,NULL,SW_RESTORE); НО ошибка "cannot convert 'wchar_t*'to'const char*'" Может ещё есть способ? подробнее

Показать сообщение отдельно
pizurok
76 / 68 / 3
Регистрация: 05.05.2013
Сообщений: 3,182
25.05.2013, 16:36     Написать класс С++, который использует функции из библиотеки с
Цитата Сообщение от Freq1 Посмотреть сообщение
Есть С длл как написать класс С++, который использует функции из библиотеки с?
Пусть, например, в либе ,mylib.dll есть функция f1, которая имеет следующий заголовок:

C++
1
2
3
4
extern "C" _declspec(dllexport) int f1(float p1, double p2)
{
    ...
}
обязательно её сделать экспортируемой через _declspec(dllexport) и добавить extern "C", чтобы линкер не испортил имя

Тогда код модуля, загружающего библиотеку выглядит так:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <windows.h>
 
typedef int (*ptrFunc)(float, double);   //объявляется тип ptrFunc - указатель на функцию
int main()
{
HINSTANCE lib = LoadLibrary("mylib.dll");    //загружаем библиотеку
if (!lib)
{
   MessageBox(NULL,"mylib.dll not found", "error", 0);
   return GetLastError();
}
 
ptrFunc p = (ptrFunc) GetProcAddress(lib, "f1");   //получаем адрес функции в указатель p
if(!p) 
{
   MessageBox(NULL,"function f1 not found", "error", 0);
   return GetLastError();
}
 
int x = (*p) (5, 7.8);    //вызов функции через указатель
FreeLibrary(lib);           //выгрузка библиотеки
return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru