归档 2011年1月13日

最后更新于 .

最近遇到了几个C++问题,在这里总结一下,希望可以避免其他朋友犯同样的错误。
一.隐式转换引发的血案
我们直接来看一段代码:


#include
#include
#include
#include
#include
using namespace std;

void a(bool input)
{
cout<<"I amd first"< cout<}

void a(const string &input)
{
cout<<"I amd second"< cout<}

int main(int argc,char **argv)
{
a("str"); // 是调用第二个a函数吗?
a(string("str"));
return 0;
}


运行结果会是啥呢?好吧,可能让你失望了,结果如下:

I amd first
1
I amd second
str

char*类型的 ...

昨天

2011年1月12日

明天

2011年1月17日

归档