gpt4 book ai didi

C++ 在 list 中找到一个句子

转载 作者:搜寻专家 更新时间:2023-10-31 00:42:26 26 4
gpt4 key购买 nike

我正在尝试找到一种优雅的方式来查找一些文本 ex。 "hello world"来自句子"I compiled my first hello world. It works!"

但是句子是std::list<word>带有一些元数据。

Class Word
{
std::string m_word;
Location ... (X,Y in a picture)
....
}

只是想知道是否有更好的方法可以使用一些 std 或 boost 函数而不是我的 2 个丑陋的循环来做到这一点。谢谢!

最佳答案

您可以使用 std::search连同只比较 m_word 成员的自定义谓词:

bool wordsEqual(const Word& a, const Word& b) {
return a.getWord() == b.getWord();
}

// ...
Word needle[] = { "hello", "world" };
list<Word>::iterator it = search(lst.begin(), lst.end(),
needle, needle + 2,
wordsEqual);

此代码采用 getWord 方法和构造函数 Word(const char*) 进行数组初始化。

关于C++ 在 list<word> 中找到一个句子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12045931/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com