我正在编写一个简单的程序,该程序使用在不同的.cpp文件中找到的功能。我所有的原型(prototype)都包含在头文件中。我将某些功能传递给其他功能,并且不确定是否正确执行了操作。我得到的错误是“'functionname'不能用作函数”。它说不能使用的函数是growthRate函数和estimatedPopulation函数。数据通过输入函数输入(我认为它正在起作用)。

谢谢!

头文件:

#ifndef header_h
#define header_h

#include <iostream>
#include <iomanip>
#include <cstdlib>


using namespace std;

//prototypes
void extern input(int&, float&, float&, int&);
float extern growthRate (float, float);
int extern estimatedPopulation (int, float);
void extern output (int);
void extern myLabel(const char *, const char *);

#endif

growthRate函数:
 #include "header.h"

float growthRate (float birthRate, float deathRate, float growthrt)
{
    growthrt = ((birthRate) - (deathRate))
    return growthrt;
}

估计的人口函数:
    #include "header.h"

int estimatedPopulation (int currentPopulation, float growthrt)
{
    return ((currentPopulation) + (currentPopulation) * (growthrt / 100);
}

主要:
#include "header.h"

int main ()
{
    float birthRate, deathRate, growthRate;
    char response;
    int currentPopulation, years, estimatedPopulation;

    do //main loop
    {
        input (currentPopulation, birthRate, deathRate, years);
        growthRate (birthRate, deathRate, growthrt);

        estimatedPopulation (currentPopulation, growthrt);
        output (estimatedPopulation (currentPopulation, growthrt));
        cout << "\n Would you like another population estimation? (y,n) ";
        cin >> response;
    }
    while (response == 'Y' || response == 'y');

    myLabel ("5-19", "12/09/2010");

    system ("Pause");

    return 0;
}

最佳答案

您正在将growthRate用作变量名和函数名。变量隐藏了函数,然后您试图像使用函数一样使用变量-无效。

重命名局部变量。

关于c++ - “cannot be used as a function error”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4412619/

10-12 17:41