如何在c++Builder中添加自定义函数

如何在c++Builder中添加自定义函数,第1张

必须在相应的头文件里先声明函数,就是说在frmTitle.h里添加声明

public: // User declarations

__fastcall TfrmTitle::DrawTitle(void)

void TfrmTitle::OnNcHitText(TMessage&tMsg)

1、先新建一个工程再在里面添加文件项里选C/C++ Header File 就会出现一个扩展名为“.h”的文件就可以了。

2、C语言头文件常用格式如下:

#ifndef LABEL

#define LABEL

//代码部分

#endif

其中,LABEL 为一个唯一的标号,命名规则跟变量的命名规则一样。常根据它所在的头文件名来命名。

举例如下:

// 头文件hardware.h

#ifndef __HARDWARE_H__

#define __HARDWARE_H__

#include<stdio.h>

int add2(int a, int b)  // 计算两个变量的和

{

    return a+b

}

#endif

// test.c文件

#include "hardware.h"  // 将自定义的头文件包含进源文件中

void main()

{

    printf("%d", add2(4, 6))  // 调用头文件中定义的函数

}

在BCB中。

1,建立一个DLL工程,

a.File->New->Other->DLL Wizard

b.在DLL Wizard中选择VC++ Style DLL

c. 添加函数

//---------------------------------------------------------------------------

class A

{

private:

int m_n

public:

A(){m_n = 0}

int foo(){return m_n}

}

//---------------------------------------------------------------------------

/* 导出函数定义 */

extern "C" _declspec(dllexport) A* __stdcall GetA(void)

{

A* pA = new A()

return pA

}

d. 编译成dll

在VC中,对应的加上:

//---------------------------------------------------------------------------

class _declspec(dllexport) A

{

public:

A()

int foo()

}

typedef A* (__stdcall *PFNGetA)(void)PFNGetA pGetA

调用:

HINSTANCE hDll=LoadLibrary("PT_DLL.dll")

if(NULL != hDll)

{

pGetA=(PFNGetA)GetProcAddress(hDll,"GetA")

if(pGetA)

{

A *a = (*pGetA)()

int t

t = a->foo()

}

}

FreeLibrary(hDll)


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11729882.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存