所以我对c ++很新:
我有一个XMLItem类。
我通过
创建了一个XMLItem类的实例XMLItem the_item = XMLItem(params...);
我创建了一个向量来保存XMLItems
vector<XMLItem> my_vect;
但是当我尝试使用
将the_item插入my_vect时my_vect.insert(the_item);
我收到以下输出错误:
error: no matching function for call ‘std::vector<XMLItem>::insert(XMLItem&)’
看起来编译器抱怨我正在尝试插入对XMLItem类型的对象的引用,但我不知道为什么会出现这种情况。有没有什么我误解了在c ++中初始化对象?
答案 0 :(得分:1)
std::vector::insert()在容器中的指定位置插入元素。你需要指定位置。没有filename1 = "North Sydney TE SP30062590-1 HVAC - Project Offer - Rev1.docx"
from docx import Document
document = Document(filename1)
for paragraph in document.paragraphs:
if 'Summary' in paragraph.text:
print paragraph.text
的任何重载,这会导致一个参数,这就是编译器给你一个错误的原因。如果您不想指定位置,则应使用insert()
或push_back()
。
答案 1 :(得分:1)
insert
操作需要一个职位。如果位置与您的情况无关,那么您可以使用emplace_back
(C ++ 11)或push_back
。