C++模板类问题,诚心求教!

dpxiong19 2013-09-16 08:21:32
typedef PIOPlugin (*plgIOPluginCreate_Def)();

template <class T>
class TLibraryBase
{
public:
TLibraryBase() { Handle = NULL; } // Default constructor.
TLibraryBase(const string &FileName) { Load(FileName); } // Load constructor.
~TLibraryBase() { if (Handle != NULL) Unload(); } // Destructor.

void Load(const string &FileName);
void Unload();
string LibName() { return LibFileName; }

T plgCreate;
private:
TPluginHandle Handle;
string LibFileName;
};

template class TLibraryBase<plgIOPluginCreate_Def>;
typedef TLibraryBase<plgIOPluginCreate_Def> TIOLibrary;


第一行的typedef PIOPlugin (*plgIOPluginCreate_Def)();中的(*plgIOPluginCreate_Def)()是值什么意思呢?我想请问这时TlibraryBase类中的T指的是plgIOPluginCreate_Def,这是什么类型呢,还有类中的“T plgCreate;”,其中plgCreate是什么类型的呢,是指函数么?小弟才浅,请各位大神不吝赐教,谢谢!
...全文
142 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
13820 2013-09-17
  • 打赏
  • 举报
回复
*plgIOPluginCreate_Def 等同于 PIOPlugin(); 从里面 往外面看 这样去理解
dpxiong19 2013-09-16
  • 打赏
  • 举报
回复
引用 5 楼 mougaidong 的回复:
引用 4 楼 dpxiong19 的回复:
[quote=引用 3 楼 mougaidong 的回复:] [quote=引用 2 楼 dpxiong19 的回复:] [quote=引用 1 楼 mougaidong 的回复:] plgIOPluginCreate_Def 是函数指针类型定义
那template class TLibraryBase<plgIOPluginCreate_Def>;后,T plgCreate;中的plgCreat表示什么呢?一个函数么?
一个函数指针变量[/quote]也就是指向一个函数么?谢谢![/quote] 是的[/quote]好的,谢谢!
turing-complete 2013-09-16
  • 打赏
  • 举报
回复
引用 4 楼 dpxiong19 的回复:
引用 3 楼 mougaidong 的回复:
[quote=引用 2 楼 dpxiong19 的回复:] [quote=引用 1 楼 mougaidong 的回复:] plgIOPluginCreate_Def 是函数指针类型定义
那template class TLibraryBase<plgIOPluginCreate_Def>;后,T plgCreate;中的plgCreat表示什么呢?一个函数么?
一个函数指针变量[/quote]也就是指向一个函数么?谢谢![/quote] 是的
dpxiong19 2013-09-16
  • 打赏
  • 举报
回复
引用 3 楼 mougaidong 的回复:
引用 2 楼 dpxiong19 的回复:
[quote=引用 1 楼 mougaidong 的回复:] plgIOPluginCreate_Def 是函数指针类型定义
那template class TLibraryBase<plgIOPluginCreate_Def>;后,T plgCreate;中的plgCreat表示什么呢?一个函数么?
一个函数指针变量[/quote]也就是指向一个函数么?谢谢!
turing-complete 2013-09-16
  • 打赏
  • 举报
回复
引用 2 楼 dpxiong19 的回复:
引用 1 楼 mougaidong 的回复:
plgIOPluginCreate_Def 是函数指针类型定义
那template class TLibraryBase<plgIOPluginCreate_Def>;后,T plgCreate;中的plgCreat表示什么呢?一个函数么?
一个函数指针变量
dpxiong19 2013-09-16
  • 打赏
  • 举报
回复
引用 1 楼 mougaidong 的回复:
plgIOPluginCreate_Def 是函数指针类型定义
那template class TLibraryBase<plgIOPluginCreate_Def>;后,T plgCreate;中的plgCreat表示什么呢?一个函数么?
turing-complete 2013-09-16
  • 打赏
  • 举报
回复
plgIOPluginCreate_Def 是函数指针类型定义

64,643

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧