社区
C++ 语言
帖子详情
使用dll里面的导出类,出现为定义symbol问题,请问原因
zasdfaaa
2009-03-23 11:11:25
大家好,有一个dll,里面有一个类有很多导出函数,有另外一个类派生于这个类,也有一些导出函数,但是它把父类里面的几个导出的虚函数变为了非虚的非导出函数
而我的类派生于这个类,出现了那几个函数的未定义symbol问题,请问这是什么原因造成的?该怎么办?
...全文
76
5
打赏
收藏
使用dll里面的导出类,出现为定义symbol问题,请问原因
大家好,有一个dll,里面有一个类有很多导出函数,有另外一个类派生于这个类,也有一些导出函数,但是它把父类里面的几个导出的虚函数变为了非虚的非导出函数 而我的类派生于这个类,出现了那几个函数的未定义symbol问题,请问这是什么原因造成的?该怎么办?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Rain208
2009-03-24
打赏
举报
回复
[Quote=引用 2 楼 zasdfaaa 的回复:]
class A
{
//................
exportmacro virtual void func1();
//..................
};
class B : public A
{
//................
void func1();//这样不就是把虚函数变成了非虚函数? 这里还是算一个虚函数啊。 只因为你是继承类。
};
我想派生于B
class C : public B
{
//..........
void myfunc();
};
出现了未定义symbol
[/Quote]
。
KevinYuen
2009-03-24
打赏
举报
回复
class C : public B
{
//..........
void myfunc();
};
你这个类也没导出 方法也没导出 结果应该是没导出啊~
zasdfaaa
2009-03-23
打赏
举报
回复
class A
{
//................
exportmacro virtual void func1();
//..................
};
class B : public A
{
//................
void func1();//这样不就是把虚函数变成了非虚函数?
};
我想派生于B
class C : public B
{
//..........
void myfunc();
};
出现了未定义symbol
arong1234
2009-03-23
打赏
举报
回复
它怎么会把虚函数变成非虚函数?怎么变的?
到底具体的错误是什么
你是不是对这个dll使用静态链接(必须静态链接对应的lib)
ch1oE
2009-03-23
打赏
举报
回复
这样就非虚了!?
boost.
dll
导入
导出
c++函数
使用
boost.
dll
可以
导出
c++函数而不用加。固定函数名,而且支持函数对象和成员的导入
导出
。三种方式
导出
的函数符号如下。
Linux 中 EXPORT_
SYMBOL
宏详解
在C/C++编程中,是一种宏
定义
,主要用于在共享库中标识某个函数或变量,使其可以在库外部被访问。这一机制在动态链接库和共享库的开发中非常重要,因为它允许其他模块通过符号名称调用库中的函数或访问库中的变量。// 示例:EXPORT_
SYMBOL
的简单用法// 函数实现通过本文对宏的详细解析,我们深入了解了其在C/C++编程中的
使用
方法和实际应用场景。在共享库开发、跨平台开发和插件系统中具有重要的作用,通过灵活
使用
这一宏
定义
,我们能够实现模块间的代码共享,提高代码的可维护性和可移植性。
EXPORT_
SYMBOL
staticconststructsectionunsignedlongkstrtabksymtab##sym
定义
了一个kernel_
symbol
结构体的实例,该结构体包含了符号的地址(通过(unsigned long)&sym获取)和对应的字符串表项(即上面
定义
的__kstrtab。
晚辈请教大虾们一个
dll
导出
类
的
问题
我自己做了一个
dll
文件,想
导出
一个
类
,在别的程序中
使用
,但是不想去设置setting/link/
dll
1.lib 当我不
导出
类
,仅
导出
函数时,采用def文件制作出一个
dll
1.
dll
,是可以实现的,但是当我想要
导出
一个
类
的时候这样就不可以了,如果我不设置setting/link/
dll
1.lib,在编译的时候没有
问题
,链连接的时候就出错。简言之就是能不能不设置setting/link/...,仅
symbol
server_设置系统以
使用
Microsoft的公共
Symbol
Server
symbol
serverIf you're always futzing around with Process Exploreror trying to load your
DLL
s into someone else's memory space (like Explorer.exe), you'rerunning WinDBG (or you want to) on Vista mem...
C++ 语言
65,211
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章