G++找不到;在Ubuntu中
我刚刚安装了 Ubuntu 并尝试制作著名的“Hello World”程序以确保所有基础功能都能正常工作。但由于某种原因,g++ 无法编译我的程序,并出现错误:“'cout' 不是 'std' 的成员”。我已经安装了 build-essential 包。我还缺少其他东西吗?
#include <iostream.h>
int main() {
std::cout << "Hello World!" << std::endl;
return 0;
}
对我来说看起来不错...
I just installed Ubuntu and tried making the famed "Hello World" program to make sure that all the basics were working. For some reason though, g++ fails to compile my program with the error: "'cout' is not a member of 'std'". I've installed the build-essential package. Am I missing something else?
#include <iostream.h>
int main() {
std::cout << "Hello World!" << std::endl;
return 0;
}
Looks pretty good to me...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
使用
#include
-iostream.h
不是标准的,可能与标准行为不同。请参阅例如 C++ FAQ lite 条目事情。
Use
#include <iostream>
-iostream.h
is not standard and may differ from the standard behaviour.See e.g. the C++ FAQ lite entry on the matter.
标准标头称为
,而不是
。另外,最好使用 -Wall 和 -pedantic 标志编译 C++ 代码,这可以指出许多非标准代码的错误,否则 g++ 会忽略这些错误。使用:The standard header is called
<iostream>
, not<iostream.h>
. Also, it is agood idea to compile your C++code with the -Wall and -pedantic flags, which can point out lots of errors with non-standard code that g++ would otherwise ignore. Use:听起来它确实找到了
iostream.h
,但它没有在std
命名空间中定义cout
。它的存在是为了向后兼容那些希望cout
位于全局命名空间中的旧程序。Sounds like it did find
iostream.h
but it does not definecout
in thestd
namespace. It is there for backwards compatibility with older programs that expectcout
to be in the global namespace.如果不使用
命名空间,您将无法使用 cout 或 cin
use
without namespace you won't be able to use cout or cin