作者Killercat (杀人猫™)
站内Programming
标题Re: 请问STL的string这样写有错误吗?
时间Thu Aug 17 19:43:31 2006
※ 引述《Killercat (杀人猫™)》之铭言:
: 其中in1, seq都是string
: for(int i = 0; i < in1.length(); ++i)
: if((find(seq.begin(), seq.end(), in1[i])) == seq.end())
: seq+=in1[i];
: 希望有的行为 : 逐个检查in1各个字元有没有在seq出现过, 没有的话seq+=in1[i]
: 不过我发现那行if死都不给true... +_+
: 不管是seq里面含不含有in1[i], if的叙述行一值都是false的状态
: 请问问题出在哪?
VS2003.net的VC7.net一直会产生seq只有in1[0]的问题
mingw则是完全没有问题的pass过去
这到底是怎麽回是阿 <O>
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.163.161.9
1F:推 b6s:把 == seq.end() 换成 == string::npos 试试 59.105.131.104 08/17 21:30
2F:推 Killercat:.end()不知道为什麽现在ok了 +_+ 218.163.161.9 08/17 22:53
3F:→ Killercat:七月果然怪事特别多 |||OTZ 218.163.161.9 08/17 22:54
4F:推 b6s:按照标准来做的话,最好是不要用 .end() 59.105.131.104 08/17 23:17
5F:推 Killercat:可是std::find()在MSDN的定义来讲... 218.163.161.9 08/17 23:30
6F:→ Killercat:好像要用.end()才对吧? 我找一下网址 218.163.161.9 08/17 23:30
7F:推 Killercat:抱歉太长 我用回文的好了 218.163.161.9 08/17 23:32