为什么我没有得到任何输出?

时间:2015-06-13 20:38:11

标签: c++ class methods output

我正在尝试用C ++编写我的第一个OOP代码,但由于某种原因,我没有得到任何输出。我正在尝试创建一个包含方法getSquare()的类,该方法接受int n并返回平方数。谁能告诉我我做错了什么?

#include <iostream>

using namespace std;

class myClass {

public:
    int square;    
    void getSqure(int n);  
};

void myClass::getSqure(int n) {
    int square = n * n;
}

int main(){
    int n = 5;
    myClass c;

    c.getSqure(5);

    cout << endl;
    return 0;
}

2 个答案:

答案 0 :(得分:1)

您的getSquare函数不执行任何操作,但只定义变量square(但不会返回它)。将其作为int返回,如

int myClass::getSqure(int n) { // make sure to change the declaration also
    int square = n * n;
    return square;
}

然后做

cout << c.getSquare(5) << endl;

你会得到一个输出。

答案 1 :(得分:0)

这是我在尝试保持尽可能接近原始问题规则时解释代码的方式。

#include <iostream>
#include <conio.h>

int main()
{
    class MyClass
    {
    public:

           int Number;
           int Square;
    };

    MyClass N;

    std::cout << "Please enter a number." << std::endl;
    std::cin >> N.Number;
    std::cout << std::endl << std::endl;

    std::cout << "Original number: " << N.Number;
    std::cout << std::endl << std::endl;

    N.Square = (N.Number * N.Number);

    std::cout << "Squared number: " << N.Square;
    std::cout << std::endl << std::endl;

    std::cout << "Press any key to continue.";

    _getch();
    return(0);
}

输出:

  

请输入一个号码。   5

     

原始号码:5

     

平方数:25

     

按任意键继续。