如何这个C++的类变成一个dll

来源:百度知道 编辑:UC知道 时间:2024/06/10 21:38:59
这个类弄成dll一直报错,不知道什么原因,请高人修改指点:
// WPL.h

#pragma once

using namespace System;
#include"stdafx.h"
#include <iostream>
#include<math.h>
using namespace std;
using std::cin;
using std::cout;

namespace WPL {

public ref class Complex
{
// TODO: Add your methods for this class here.
public:
double real,imag;
Complex()
{
real=0.0;
imag=0.0;
}
//Complex(double r,double i)
//{
// real=r;
// imag=i;
//}
Complex Complex::operator + (Complex c1)
{
Complex temp;
temp.real = real + c1.real;
temp.imag = imag + c1.imag;
return temp;
}
Complex Complex::operator - (Complex c1)
{
Complex temp;
temp.real = real - c1.real;
temp.imag = imag - c1.imag;
return temp;
}
Complex Complex::operator * (Comp

动态库导出一个C++类的语法,就是在类的名字前面加一个_declspec(dllexprot)标识符。
class _declspec(dllexprot) ClassName
{
......
}
你得先建个动态库工程,这样的话这个类的实现就在这个动态库中了。
导出一个命名空间很少用的,不知道你报的什么错

你报的错应该是指你要返回一个类时,会调用到它的拷贝构造函数,你试着实现complex的拷贝构造函数再看看。