Всем привет. Я пробую создать и подключить свою DLL. Не могу понять, почему вижуалка не видит мои функции. Хотя определения есть, ссылка тоже указана на библиотеку. Может кто-то знает?
Заголовочный файл MyMathFuncs.h:
#define DllExport __declspec( dllexport )
namespace MathFuncs
{
class MyMathFuncs
{
public:
static double Add(double a, double b);
static double Subtract(double a, double b);
static double Multiply(double a, double b);
};
}
Файл MyMathFuncs.cpp:
#include "stdafx.h"
#include "MyMathFuncs.h"
#include <stdexcept>
using namespace std;
namespace MathFuncs
{
double MyMathFuncs::Add(double a, double b)
{
return a + b;
}
double MyMathFuncs::Subtract(double a, double b)
{
return a - b;
}
double MyMathFuncs::Multiply(double a, double b)
{
return a * b;
}
}
Файл MyExecRefsDll.cpp:
#include "stdafx.h"
#include <iostream>
#include "MyMathFuncs.h"
using namespace std;
int main()
{
double a = 7.4;
int b = 99;
cout << "a + b = " <<
MathFuncs::MyMathFuncs::Add(a, b) << endl;
cout << "a - b = " <<
MathFuncs::MyMathFuncs::Subtract(a, b) << endl;
cout << "a * b = " <<
MathFuncs::MyMathFuncs::Multiply(a, b) << endl;
cout << "a / b = ";
return 0;
}
Вот такие ошибки:
error LNK2019: ссылка на неразрешенный внешний символ
Судя по этой статье, нужно что-то на подобие этого:
В MyMathFuncs.h
:
#ifndef MY_LIB
#define MY_LIB __declspec( dllimport )
#endif
// ...
class MY_LIB MyMathFuncs {/*...*/};
// ...
В MyMathFuncs.cpp
:
#include "stdafx.h"
#include <iostream>
#define MY_LIB __declspec( dllexport )
#include "MyMathFuncs.h"
// ...
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Как сделать MainWindow квадратным? Нужно чтобы окно можно было растягивать, но при этом его высота и ширина оставались одинаковыми
Всем приветКодил я на Python, хотел всегда освоить дальше js