更改函数后项目中c++源文件的可视化重新编译

visual Recompiling of c++ Source Files in a Project After Changing a Function

本文关键字:新编译 可视化 编译 源文件 函数 项目 c++      更新时间:2023-10-16

在Visual C++中,如果我更改函数、类、结构等在源文件中的功能,而不更改其头文件中的相应原型,那么所有使用该函数、类和结构等的源文件都需要重新编译吗?

例如,如果我最初有这样的东西:

//function.h
int function(int x, int y);
//function.cpp
int function(int x, int y){
    return x+y;
}
//main.cpp
#include function.h
int main(){
    int x=3
    int y=2
    std::cout<<function(x, y);
    return 0;
}

然后我把函数.cpp改为:

//function.cpp
int function(int x, int y){
    return x*y;
}

我需要重新编译main.cpp吗?

不,您不需要重新编译main,因为函数的ABI(应用程序二进制接口)没有更改。但是,您需要将主应用程序与重新编译的函数.cpp.链接起来