C++在map映射的问题
#include<stdio.h>#include<map>std::map<char*,char*>ef;intmain(){char*a="hello";ef["he...
#include<stdio.h>#include<map>std::map<char*,char*>ef;int main(){ char *a="hello"; ef["hello"]="hi"; printf("%s %s\n",a,ef[a]); char b[]="hello"; ef["hello"]="hi"; printf("%s %s\n",b,ef[b]);}
第二个结果为什么会这样? 展开
第二个结果为什么会这样? 展开
1个回答
2015-01-21
展开全部
char b[] = "hello";
ef["hello"] = "hi";
map 存不是b的指针,是"hello"的副本。
ef["hello"] = "hi";
是申请值为"hello"的栈,把地址map,
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询