突然看到string.h中还有extern "c++"---什么作用啊?

wens07 2010-10-27 11:25:20
像这样的代码段---

extern "C++"
{
template <size_t _Size, typename _DstType>
inline
errno_t __CRTDECL memcpy_s(_DstType (&_Dst)[_Size], _In_opt_bytecount_(_SrcSize) const void * _Src, _In_ rsize_t _SrcSize) _CRT_SECURE_CPP_NOTHROW
{
return memcpy_s(_Dst, _Size * sizeof(_DstType), _Src, _SrcSize);
}
}


哪位大哥说下? 是以c++的方式进行编译?(由extern "c"想到)
...全文
88 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengzhixi 2010-10-28
  • 打赏
  • 举报
回复
就是按照C++方式编译这个函数
hslinux 2010-10-28
  • 打赏
  • 举报
回复
libinfei8848 2010-10-28
  • 打赏
  • 举报
回复
指定用c++编译器来解析
FrankHB1989 2010-10-28
  • 打赏
  • 举报
回复
因为要给C++标准库共用实现的,所以里面可以包含一些C++代码(虽然不见得非这么做)。
问题是不用extern "C++"注明C++的话,template <size_t _Size, typename _DstType>这样的代码在C里面根本编译不过去。。。
  • 打赏
  • 举报
回复
防止函数名被修改为C++类型
qq120848369 2010-10-27
  • 打赏
  • 举报
回复
我也这么觉得,语句块内的都按C++方式起名.

64,654

社区成员

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

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