只是一个简单的程序,但是谁能指出发生此错误的原因,(我使用的是dev C ++版本5.11)
#include <stdio.h>
#include <conio.h>
class animal
{
public :
void sound();
void eat() ;
};
void animal::eat()
{
cout<<"i eat animal food" ;
}
void animal::sound()
{
cout<<"i sound like an animal" ;
}
void main()
{
animal a ;
a.sound()
a.eat()
getch()
}
错误来了,像这样:
In member function 'void animal::eat()':
15 4 C:\Users\chetna\Documents\Untitled1.cpp [Error] 'cout' was not declared in this scope
1 0 C:\Users\chetna\Documents\Untitled1.cpp In file included from C:\Users\chetna\Documents\Untitled1.cpp
答案 0 :(得分:3)
至少您必须包括
#include <iostream>
和
using namespace std;
名称cout
在命名空间std
中声明。因此,要么使用上面显示的using指令,要么使用一个限定名称(更好),例如
std::cout<<"i eat animal food" ;
另一种方法是使用using声明。例如
#include <iostream>
using std::cout;
//...
void animal::eat()
{
cout<<"i eat animal food" ;
}
并删除此指令
#include <stdio.h>
还放置分号
a.sound();
a.eat();
getch();
请注意,函数main的声明应类似于
int main()
答案 1 :(得分:0)
请停止使用旧的Borland C ++等。
改用符合现代标准的C ++编译器(g ++,clang,Microsoft Visual Studio)。
请勿使用conio.h,它是一个非常古老的编译器特定库,而不是标准库。
不要使用stdio.h,它不是一个不好的库,但是它声明了几个C函数,而不是C ++函数。
将主要功能声明为
int main()
不是void main()
,因为标准C ++需要main函数返回一个int(成功为0)。
使用cout
代替使用std::cout
,因为它是表示std
命名空间中定义的标准输出的对象。