以下代码段有问题:

#include <iostream>
using namespace std;

class Calculator
{
  public:

  int Sum(int first, int second);
};

int Calculator::Sum(int first, int second)
{
  int sum = first + second;
  return sum;
}

class Printer{
public:
  void Print();
  int first, second, calculated_sum;

  cout << "Give a first integer: ";
  cin >> first;
  cout << "Give a second integer: ";
  cin >> second;

  Calculator calc;
  calc.Sum(first, second);
};

void Printer::Print(){
  cout << "Sum: " << sum << endl;
}

int main()
{
  Printer object;
  object.Print();
}
我只能触摸“打印机”类,因为其他类不是我创建的。
我尝试编译此错误:

如此少的代码行有太多的错误。关于尝试解决此问题的任何想法?

最佳答案

基本上,人们在评论中说的是什么。你需要搬家

cout << "Give a first integer: ";
cin >> first;
cout << "Give a second integer: ";
cin >> second;

从坐在您的类(class)中进入某些功能。类声明中的区域用于声明成员变量和方法。

线路也一样
Calculator calc;
calc.Sum(first, second);

例如,打印机对象的打印方法似乎是放置这些行的好地方。

然后,您只需要确保在print方法的范围内声明sum,就可以了。

关于c++ - C++:cin,cout等。 “does not name a type”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25312236/

10-12 15:34