用C ++调用库中的函数

时间:2015-07-16 15:23:48

标签: c++ function

我不熟悉在C ++中使用库,并希望学习一些帮助。我有一个main.cpp文件和一个名为maths的图书馆maths.cppmaths.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>指令

由于

1 个答案:

答案 0 :(得分:1)

R2和Vin来自哪里? 你上过课吗?

尽可能多地使用STL,忘记C数组,使用std::vectorstd::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);
}