C++ 编写一个没有类和cpp文件的库
我想在标题中编写以下函数。这样做的语法是什么C++ 编写一个没有类和cpp文件的库,c++,C++,我想在标题中编写以下函数。这样做的语法是什么 int added (uint8_t a, uint8_t b){ int r; r=a+b; return r; } 确保你的h有一个警卫 #pragma once 在标头中内联声明函数: inline int added (uint8_t a, uint8_t b){ int r; r=a+b; return r; } 将其声明为静态也可以 static int added (uint8_t a, uint8_t b){ i
int added (uint8_t a, uint8_t b){
int r;
r=a+b;
return r;
}
确保你的h有一个警卫
#pragma once
在标头中内联声明函数:
inline int added (uint8_t a, uint8_t b){
int r;
r=a+b;
return r;
}
将其声明为静态也可以
static int added (uint8_t a, uint8_t b){
int r;
r=a+b;
return r;
}
或者,如果您的函数很大,或者您有一个循环依赖项,那么只在头文件中声明它
extern int added (uint8_t a, uint8_t b); // extern keyword is optional
以及cpp文件中的主体
int added (uint8_t a, uint8_t b){
int r;
r=a+b;
return r;
}
就这么简单
有些编译器不支持pragma一次,为了避免在编译cpp时头文件中的声明出现两次,从而生成编译器警告和错误,它们使用宏
#ifndef FILENAME_H // check if this header file was already read, using a unique macro name
#define FILENAME_H // no. define the unique macro now, so we'll not read this section again
// this section will only be read once.
#endif // end the section protected by FILENAME_H
你到底有什么问题?它似乎对我有用,但你需要包括在内。尝试以下方法:包含内联int addeduint8_t a,uint8_t b{返回a+b;}只要将其设置为内联函数,就可以将其放入头中。@Thomas Flinkow我手头有一个更复杂的问题。我需要弄清楚这样做的语法,但我在谷歌上搜索了几个小时却没有找到一个例子。上面的代码只是一个测试。@Atmega328那么您应该向我们展示您的复杂问题了instead@Thomas弗林科:你说得有点对,但我的处境有点尴尬。比方说,我的复杂问题是做爱,但我和一个女孩说话有问题。那么也许从简单的事情开始?让我先打一垒再打全垒打。真不敢相信这么简单。那些“定义”和“定义”让我头疼。如果我不在答案中加上这些,我会后悔的。既然你已经拿到了。我会的,