亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么我的VC++ 6.0 編譯的話,不用using namesapce std 也能用cout,而且反而加了using namesapce std 會編譯出錯。

#include <iostream.h>

#include <stdlib.h>


namespace A

{

int x = 1;

void fun1()

{

cout<<"A"<<endl;

}

}


namespace B

{

int x = 2;

void fun()

{

cout<<"B"<<endl;

}

}


using namespace A;

int main(void)

{

fun1();

cout<<A::x<<endl;

cout<<B::x<<endl;

system("pause");

return 0;

}


正在回答

5 回答

編譯器問題,用DEVCPP吧

0 回復 有任何疑惑可以回復我~
#1

古風_0001 提問者

非常感謝!
2016-07-03 回復 有任何疑惑可以回復我~

.h是C語言的頭文件,沒有命名空間的定義,沒有.h才是C++的頭文件

0 回復 有任何疑惑可以回復我~

如果你用的是vs2015編譯器的話會提示cout沒有標識符


0 回復 有任何疑惑可以回復我~

你應該用的是vc6.0的編譯器吧<iostream.h>是比較老的C++的頭文件的版本,而namespace是98年才被加入C++標準的,所以<iostream.h>里面是沒有std這么個命名空間的,當使用 <iostream.h>時,相當于在c中調用庫函數,使用的是全局命名空間,也就是早期的c++實現。頭文件<iostream>則沒有定義全局命名空間,使用時必須使用namespace std才能正確使用cout。

0 回復 有任何疑惑可以回復我~

那你試試把所有的cout和endl都加上std::試試 ?,如果錯了那就是編譯器問題吧

int main(void)改成int main()

目測你的代碼沒有什么問題 ?調試一下

1 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
C++遠征之起航篇
  • 參與學習       290962    人
  • 解答問題       817    個

C++亮點盡在其中,本課程是在C語言基礎上的一個延伸,得以升華

進入課程

為什么我的VC++ 6.0 編譯的話,不用using namesapce std 也能用cout,而且反而加了using namesapce std 會編譯出錯。

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號