C++中的INL

本文介绍了INL文件在C++项目中的使用方式,特别是在处理大量内联函数和模板定义时的作用。通过示例展示了如何将内联函数和模板的具体实现分离到.INL文件中,并在头文件中引用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

inl 文件是内联函数的源文件。

内联函数通常在c++头文件中实现,但有的时候内联函数较多或者出于一些别的考虑(使头文件看起来更简洁等),

往往会将这部分具体定义的代码添加到INL文件中,然后在该头文件的末尾将其用#include引入。

由此也可以看到inl文件的例外一个用法的影子——模板函数、模板类的定义代码的存放。

对于比较大的工程来说,出于管理方面的考虑,模板函数、模板类的声明部分一般存放在一个或少数几个文件中,而将其定义部分存放在inl文件中,然后在相应的头文件中包含进来。

  

简单框架如下: 

// .h文件
template<class T1,class T2>
class CTemplateClass
{
  public:
  CTemplateClass();
  virtual ~CTemplateClass();
  BOOL getInfo(CStringArray& user BaseInfoAry);
};

// .inl文件
template<class T1,class T2>
CTemplateClass<T1,T2>::CTemplateClass()
{
}
template<class T1,class T2>
CTemplateClass<T1,T2>::~CTemplateClass()
{
}
template<class T1,class T2>
BOOL CTemplateClass<T1,T2>::getInfo(CStringArray& userBaseInfoAry)
{
     T1 arg1;
      T2 arg2;
      return TRUE;
}


 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值