gpt4 book ai didi

c++ - 如何在其他源文件中定义函数 :C++ CodeBlocks

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:16:18 25 4
gpt4 key购买 nike

我正试图将我的函数分离到另一个源文件中。但是我在添加函数时收到多个定义的错误。

主要源文件

main.cpp

#include<iostream>
#include "myHeader.h"
using namespace std;

int main()
{
int result = add(1,2);
}

头文件“myHeader.h”

#include "calc.cpp"
int add(int, int);

其他源文件“calc.cpp”

int add(int a, int b)
{
return a+b;
}

最佳答案

你需要的是:

"myHeader.h"

#ifndef MY_HEADER
#define MY_HEADER
int add(int, int);
#endif

计算.cpp

#include "myHeader.h"

int add(int a, int b)
{
return a+b;
}

主要.cpp

#include "myHeader.h"

int main()
{
int result = add(1,2);
return 0;
}

不要将 .cpp 包含到 .h 中。头文件用于告诉编译器存在具有指定原型(prototype)的函数,但编译器会注意将对函数的调用与该函数的实现相匹配。

另外,给头文件和 .cpp 起相同的名字通常是个好主意,所以 calc.hcalc.cpp 而不是 myHeader .h.

关于c++ - 如何在其他源文件中定义函数 :C++ CodeBlocks,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21167521/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com