VS2010的cout分辨率

时间:2012-03-04 17:08:38

标签: c++ visual-studio-2010 iostream cout

我在VS2010中创建了一个c ++ Win32控制台应用程序,并在一个单独的类中创建。

void Thing::display(){
    Point pt(0, 0);
    for( ; pt.y < m; pt.y++){
        for( ; pt.x < m; pt.x++){
            if (pt == pi){
                std::cout << "[  ]";
            }else {
                std::cout << "[" << Array[pt.x][pt.y] << "]";
                if ( pt.x == m ){
                    std::cout << std::endl;
                }
            }
        }
    }
}
存在于Thing类中的

,它在h和cpp之间分开。 point是一个(x,y)点,Array是一个二维的int数组,pi是当前位置跟踪的私有成员。它不断抛出错误

error C2039: 'cout' : is not a member of 'std'
error C2065: 'cout' " undeclared identifier

它对endl做了同样的事情。我可以进入我的_tmain()并编写

cout << "Hello world" << endl

没问题。当我试图告诉编译器这个文件

using namespace std;

它抛出inteslliSense:name必须是命名空间名称

编辑:建议将#include放入头文件导致

error C1010: unexpected end of file while looking for precompiled header. did you gorget to add '#include "StdAfx.h"' to your source?

将#inlcude移动到stdafx.h导致相同。

Edit2(已解决):

放置

#include <iostream>

进入stdafx.h,然后列出该程序的头文件。并列出

#include "stdafx.h"

在.cpp文件的开头。

3 个答案:

答案 0 :(得分:3)

你是否包含了iostream

#include <iostream>

在你的头文件中?

答案 1 :(得分:2)

您可能未包含<iostream>

答案 2 :(得分:2)

您需要加入<iostream>

您列出的第二个问题由错误消息本身回答:

  

错误C1010:查找预编译头时意外结束文件。你忘了在你的来源中添加'#include“StdAfx.h”'吗?

如果使用预编译头,则需要在.cpp文件中包含stdafx.h。你可能忘记这样做,所以错误告诉你“嘿,我正在寻找这个特殊的标题,但我在文件的末尾但仍然没有找到它”。