我有一个包含以下内容的头文件

class newpoint
{

public:
    newpoint();

    newpoint(int num1, int num2);

    double average(int num11, int num22);
};


和带有newpoint.h的.cpp文件

#include "newpoint.h"
#include <iostream>

using namespace std;

newpoint::newpoint()
{
    cout << "This is the default constructor talking " << endl;
}

newpoint::newpoint(int number1, int number2){

    int sum = number1 + number2;
    cout << sum << endl;
}

double newpoint::average(int number11, int number12){
    double avg = (number11 + number12) / 2;
    return avg;
    cout << "the average is" << avg << endl;
}


和一个以.h文件作为头文件并计算
通过如下调用newpoint.cpp文件中的函数

#include <iostream>
#include "newpoint.h"

using namespace std;

int main(){
    int num4, num5;
    newpoint dag;

    //newpoint dag2(2,3);

    //cout << "enter a number " << endl;
    //cin >> num4;
    //cin >> num5;

    newpoint ave;
    ave.average(2,5);

    return 0;
}


为什么我的程序正在打印默认构造函数而不是
平均功能?

最佳答案

为什么我的程序打印默认承包商而不是平均功能?



newpoint dag;newpoint ave;将调用newpoint的默认构造函数。
您在return中的cout之前写newpoint::average()。因此,不会从newpoint::average打印任何内容。

关于c++ - 为什么我的程序打印默认构造函数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35645250/

10-11 18:42