STL 问题

编辑器加载中... #include #include <windows.h> #include using namespace std; int main(int argc, char* argv[]) { set ss; char name[MAX_PATH] = {"abcd"}; char *p = "abcd"; ss.insert((LPSTR)name); int n = ss.find(p)!=ss.end(); if(n) { cout<<"set 集合中存在这项"<<endl; } else { cout<<"set 集合中不存在这项"<<endl; } return 0; } set保存的是字符指针,ss.insert(name)只不过是把name的地址的副本保存的ss容器中,ss.find(p),用p的地址来查找,当然不存在 对比的是容器保存的数据类型,而不是字符串

原文地址:https://www.cnblogs.com/pipicfan/p/2479931.html