Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 编写一个没有类和cpp文件的库_C++ - Fatal编程技术网

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弗林科:你说得有点对,但我的处境有点尴尬。比方说,我的复杂问题是做爱,但我和一个女孩说话有问题。那么也许从简单的事情开始?让我先打一垒再打全垒打。真不敢相信这么简单。那些“定义”和“定义”让我头疼。如果我不在答案中加上这些,我会后悔的。既然你已经拿到了。我会的,