例如
class demo {
public:
static void printDemo(void)
{
std::cout << "Hi there" << std::endl;
}
};
extern "C"{
void myInterrupt(void)
{
demo::printDemo();
}
}
通常情况下,
extern "C"
用于维护C风格的链接方式,因此myInterrupt
的声明与在另一个文件(如startup.S
)中声明的中断向量中的声明相匹配,该函数的地址有效地被安装在该向量中。但是,在此块中调用其他的C++函数会对其产生影响吗?