c++在第一个cpp中的一个函数中声明一个extern float变量,然后在另一个cpp文件的函数中定义该变量,最后在main.cpp主函数cout该变量,代码怎么实现,以及最后怎么用cmake编译成文件
时间: 2024-03-03 07:53:50 浏览: 66
C、C++程序编译步骤以及如何生成可执行文件
假设我们有三个文件,分别是:a.cpp、b.cpp、main.cpp。
首先,在 a.cpp 文件中,我们声明一个 extern float 变量:
```cpp
// a.cpp
extern float myFloat;
```
然后,在 b.cpp 文件中,我们定义这个变量:
```cpp
// b.cpp
float myFloat = 3.14;
```
最后,在 main.cpp 文件中,我们使用这个变量:
```cpp
// main.cpp
#include <iostream>
extern float myFloat;
int main() {
std::cout << "myFloat = " << myFloat << std::endl;
return 0;
}
```
接下来是如何使用 CMake 编译这三个文件。
首先,在项目的根目录下,创建一个 CMakeLists.txt 文件,内容如下:
```cmake
cmake_minimum_required(VERSION 3.10)
project(myProject)
# 编译 a.cpp 和 b.cpp 文件
add_library(myLib STATIC a.cpp b.cpp)
# 编译 main.cpp 文件,并链接 myLib 库
add_executable(myProgram main.cpp)
target_link_libraries(myProgram myLib)
```
然后,在项目的根目录下,创建一个 build 文件夹,进入该文件夹并执行以下命令:
```bash
cmake ..
make
```
这样就可以将三个文件编译成一个可执行文件 myProgram。
阅读全文