extern "C"

extern   "C"   _declspec(dllexport)   double   SquareRoot(double   d);  

 

“C”表示按照标准c进行编译  
  extern   则是用于声明动态导出函数_declspec(dllexport)   double   SquareRoot(double   d);是要外部使用的

这个函数在Dll里的,要把它暴露给别的用户

 

 

extern   "C"    
  好象叫作编译重定向什么的。  
  意思就是后面跟的代码是标准C的语法。  
   
  主要是因为C++有重载的概念。  
  所以编译后生成库不同。  
  eg:  
   
  对函数fun(int,   int)  
   
  标准C编译后生成_fun()  
  C++编译后生成_fun(int,   int)  
   
  如果不加extern   "C"    
  当调用fun(int,   int)时,却找不到_fun(int,   int)  
   
   
  如果在C++文件中引用标准C的库函数或标准C编译成的库  
  一定要加extern   "C"    

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值