从另一个.cpp文件调用方法

时间:2017-01-20 20:53:56

标签: qt methods

我想将一些数据保存为文本文件,第一个txt文件将包含标题信息,另一个文本文件将保存从传感器流式传输的数据,因此在互联网的帮助下我创建了以下“datalogger.cpp”档案

#include "datalogger.h"
#include <QDebug>
#include <iostream>
#include <QFile>

DataLogger::DataLogger(QObject *parent) : QObject(parent)
{

}

   DataLogger::~DataLogger(){

}
void DataLogger::save(DataStream &input){
    saveAsText(input);


}
void DataLogger::saveAsText(DataStream &input){

                    QTextStream outHeader(&outFileHeader);

                    outHeader   << "[CAPTURE SETTINGS]\n"
                                << "Filename: " <<      SettingsSingleton::instance().getFileName() << ".txt \n"
                                << "Samples: " <<       QString::number(input.size()) << "\n"
                                << "Duration: " <<      QString::number(input.back().time) << "ms \n"
                                << "Sample rate: " <<   QString::number(SettingsSingleton::instance().getSampleRate()) << " Hz\n"
                                << "Source: "  <<       SettingsSingleton::instance().getSource() << "\n"                                  

                    outFileHeader.close();

                }

                QFile outFile(SettingsSingleton::instance().getFileName() + ".txt");

                 QTextStream out(&outFile);                      

                    for (int i ; i<input.size();i++){
                           const EcgStreamObject tmp=input.at(i);
                                            out << tmp.toText() << endl; //"\n";    

                    }  

                    outFile.close();
                }    

}

我有我想要传递给方法的“DataStream”输入变量并保存为“.txt”文件,但我不知道如何调用方法“void DataLogger :: save(DataStream&amp; input) “来自DataStream变量所在的不同”.cpp“文件。 我对c ++非常陌生,请尽可能简单。 提前谢谢

2 个答案:

答案 0 :(得分:0)

如果我的问题是正确的,那就是如何在c ++中创建和使用头文件。

已经有很多相关信息,例如来自cplusplus.com的this文章或来自learncpp.com的this

答案 1 :(得分:0)

您需要做的就是添加&#34; datalogger.h&#34;到你的另一个档案。

当您从其他文件调用DataLogger :: save方法时,程序将搜索链接到您的程序的实现(即您在此处发布的文件)并使用它来实际执行工作。

Stefan的回答可能很重要,因为它将涵盖这个案例和其他一些基础知识,如果你将长期在C / C ++工作。