我目前正在学习如何为mbed电子项目编写自己的库。到目前为止,我有两个文件cfExtensions.cpp和cfExtensions.h文件。我在cfExtensions.h构造函数中引用了变量,并在cfExtensions.cpp文件中更改了它们的值;但是我的mbed c++编译器抛出:标识符“phMin”未识别。我的代码是:

文件:cfExtensions.h
/ *
文件:cfExtensions.h

Header file for cfExtensions Library.
*/

#ifndef __cfExtns_H
#define __cfExtns_H

#include "mbed.h"

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
//==================================
// Definitions
//==================================
#define CF_FILE_LOCATION  "local/settings.cf"     // File location local/settings.cf

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
//==================================
// cfExtension Class
//==================================
class cfExtensions
{
public:
//---------------------------
// Function Prototypes
//---------------------------
        cfExtensions();                         // Constructor, Initialisation tasks

        void loadConfigFile();                  // Loads config file defined in CF_FILE_LOCATION
        void checkConfigForFirstStart();        // Check if MBED startup is the very first startup
        void getPhMaxValueFromConfigFile();     // Get PH Max value from config file
        void getPhMinValueFromConfigFile();     // Get PH Min value from config file
        void getKeyAndValue();


//---------------------------
// Variables
//---------------------------
        volatile bool pingTicked;

        bool linkedWithBaseStation;

        char *sbNameKey;
        char sbNameValue[BUFSIZ];

        char *sbFirstStartKey;
        char sbFirstStartValue[BUFSIZ];

        char *sbUseBaseStationKey;
        char sbUseBaseStationValue[BUFSIZ];

        char *sbPhMaxKey;
        char sbPhMaxValue[BUFSIZ];

        char *sbPhMinKey;
        char sbPhMinValue[BUFSIZ];

        float phMax;
        float phMin;


//---------------------------
// Devices
//---------------------------

};

#endif

文件:cfExtensions.cpp

最佳答案

我认为您的cfExtensions.cpp文件中应该是void cfExtensions::getPhMinValueFromConfigFile() { }

09-07 04:04