using namespace std(部分问题)

问题:

#include   <iostream >
#include   <string >
using   namespace   std;

void   main(   )  
{
string   s[2]   =   {"asdf","adadff"};

cout < <s[1] < <endl   ;

}
这个就没有错,为什么下面的程序就报错??
#include   <iostream.h >
#include   <string.h >
//using   namespace   std;

void   main(   )  
{
string   s[2]   =   {"asdf","adadff"};

//cout < <s[1] < <endl   ;

}
问题主要出在string   s[2]   =   {"asdf","adadff"};这行;
using   namespace   std;有什么作用是不是用了这行,定义头文件时就可以不用加“.h”还时有其他什么作用?
以前一直用bc3.1,对vc++不了解
请大家帮我解决这个问题 

部分解决1:

using   namespace   std是告诉编译器本程序使用std这个命名空间(namespace)内的东西,如果没这句就得这样写
#include   <iostream >
#include   <string >
//using   namespace   std;

void   main(   )  
{
std::string   s[2]   =   {"asdf","adadff"};

std::cout < <s[1] < <std::endl   ;

}
这样太麻烦了

部分解决2:

加h   和不加h   表示告诉编译器调用两种不同版本的库文件:c   和   c++

对于不加h的,库文件里定义的变量名均放在命名空间std里,当然要std::了;
而加了h的,则变量名没有单独处理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值