为啥我没有任何输出?
Posted
技术标签:
【中文标题】为啥我没有任何输出?【英文标题】:Why don't I get any output?为什么我没有任何输出? 【发布时间】:2015-06-13 20:38:10 【问题描述】:我正在尝试用 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;
【问题讨论】:
你正在输出除行尾以外的任何内容 【参考方案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;
你会有一个输出。
【讨论】:
感谢您的回复。好吧,我之前尝试过,但是当我尝试返回正方形时,它不会编译! @Zzhh82 因为你的函数被声明为返回void
。 @vsoftco 将函数更改为返回 int
。
@Zzhh82 你是不是也在你的班级里把声明改成了int getSquare(int n);
?
这就是问题所在,我的课上没有改过!!!现在可以了!非常感谢您的帮助!【参考方案2】:
这就是我在尽可能接近您问题的原始规则的同时解释代码的方式。
#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
按任意键继续。
【讨论】:
以上是关于为啥我没有任何输出?的主要内容,如果未能解决你的问题,请参考以下文章
为啥我的 console.log 没有在这里输出任何东西? [复制]