C ++:cin,cout等“”没有命名类型“

时间:2014-08-14 15:46:07

标签: c++

遇到以下代码问题:

#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();
}

我只能触摸打印机类,因为其他的不是由我创建的。

我尝试编译时遇到的错误:

  

code.cpp:22:错误:ISO C ++禁止声明&#39; cout&#39;没有类型

     

code.cpp:22:错误:预期&#39;;&#39;之前&#39;&lt;&lt;&#;令牌

     

code.cpp:23:错误:ISO C ++禁止声明&#c; cin&#39;没有类型

     

code.cpp:23:错误:预期&#39;;&#39;之前&#39;&gt;&gt;&#39;令牌

     

code.cpp:24:错误:ISO C ++禁止声明&#39; cout&#39;没有类型

     

code.cpp:24:错误:预期&#39;;&#39;之前&#39;&lt;&lt;&#;令牌

     

code.cpp:25:错误:ISO C ++禁止声明&#c; cin&#39;没有类型

     

code.cpp:25:错误:预期&#39;;&#39;之前&#39;&gt;&gt;&#39;令牌

     

code.cpp:28:错误:ISO C ++禁止声明&#39; calc&#39;没有类型

     

code.cpp:28:错误:预期&#39 ;;&#39;之前&#39;。&#39;令牌

     

code.cpp:在成员函数&#39; void Printer :: Print()&#39;:

     

code.cpp:32:错误:&#39;总和&#39;未在此范围内声明

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

1 个答案:

答案 0 :(得分:3)

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

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

从坐在你的班级里面进入一些功能。类声明中的区域用于声明成员变量和方法。

也是如此
Calculator calc;
calc.Sum(first, second);

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

然后你只需要确保在print方法的范围内声明sum,你就应该好了。