为什么我们需要使用:
extern "C" {
#include <foo.h>
}
特别:
我们什么时候应该使用它?
在编译器/链接器级别发生了什么,需要我们使用它?
如何在编译/链接方面解决了需要我们使用它的问题?
我经常看到程序编码如下:
extern "C" bool doSomeWork() {
  //
  return true;
}
为什么我们使用extern "C"块?我们可以用C++中的东西替换它吗?使用有什么好处extern "C"吗?
我确实看到了一个解释这个的链接但是为什么我们需要在已经有C++的情况下用C语言编译?