我不熟悉在C ++中使用库,并希望学习一些帮助。我有一个main.cpp
文件和一个名为maths
的图书馆maths.cpp
和maths.h
我在maths.cpp
文件中有以下功能,我想从main.cpp
拨打电话:
void maths::Readings_to_Temperature (int temperature [5]) {
for (int n = 0 ; n < no_readings ; n++ ){
temperature[n] = ((R2*temperature[n])/Vin)-R2;
}
}
我已经从main.cpp
移动了它,它工作得很好,因为我想清理代码并使其更具可共享性。那么如何在main.cpp
中引用它呢?我已经阅读了一些教程,但是led.flash(5)
样式示例并没有真正起作用,因为我没有任何硬件参数可以传递给它,唯一需要传递的数据是进入{{1的变量}}
我目前的主要电话是:
temperature
我想也许:
Readings_to_Temperature (readings);
或 maths :: Readings_to_Temperature(读数);
我在maths.Readings_to_Temperature (readings);
#include <maths.h>
指令
由于
答案 0 :(得分:1)
R2和Vin来自哪里? 你上过课吗?
尽可能多地使用STL,忘记C数组,使用std::vector或std::array。
maths.h
#include <vector>
namespace maths
{
void Readings_to_Temperature (std::vector<int>& v);
}
maths.cpp
#include "maths.h"
namespace maths
{
void Readings_to_Temperature(std::vector<int>& v)
{
const size_t size = v.size();
for (size_t i = 0; size < size ; ++i)
{
temperature[i] = ((R2 * temperature[i]) / Vin) - R2;
}
}
}
的main.cpp
#include <vector>
#include "maths.h"
int main()
{
std::vector<int> v(5, 0); // 5 integers set to 0
maths::Readings_to_Temperature(v);
}