为啥不包含头文件string也能用string
为什么不包含头文件string也能用string?如题,代码如下,希望有大侠指点一二:#includeiostream//#include
为什么不包含头文件string也能用string?
如题,代码如下,希望有大侠指点一二:
#include<iostream>
//#include<string>
using namespace std;
int main(){
string s="asdf";
cout<<s<<endl;
cout<<s.size()<<endl;
return 0;
}
[解决办法]如果是g++编译器,可以使用g++ -M xx.cpp 查看这个文件包含的头文件。
[解决办法]有些智能的编译器会自动理解你的意思帮你添加的。
[解决办法]#include<iostream>
//#include<string>
using namespace std;
int main()
{
string s="asdf";
//cout<<s<<endl;
cout<<s.size()<<endl;
return 0;
}
cout<<s<<endl这句应该通不过,因为ostream的重载在string库文件里
cout<<s.size()<<endl 这句可以通过没问题
vs2010 cout<<s<<endl这句通不过,不知道你用的是什么平台
[解决办法]间接包含了。。头文件中是可以包含头文件的