nac*_*o4d 1 c++ libstdc++
是否有可能没有专门的矢量?
我的问题是:我有一个抽象类N4GestureRecognizer和它的几个子类.所以在一个Controller类中我想要一个vector<N4GestureRecognizer> recognizers_但是因为它是抽象的我不能.如何将这个识别器存储在矢量或集合或列表中,或者在标准c ++中可以循环使用?
vector<N4GestureRecognizer> recognizers_
Gob*_*bra 5
将它们存储为指针.无论是纯指针还是一些智能指针类.
EXTRA 实际上,指针是唯一的方法,即使该类不是摘要,但是是子类,并且子类旨在用于向量中.原因:std :: vector为每个元素分配sizeof(T)字节,但sizeof(derivedFromT)可能大于sizeof(T).您将能够将子对象推送到向量中,但它可能会在运行时导致不可预测的问题.
当然,管理指针向量是一种痛苦,但据我记忆,boost包含一些智能指针来简化任务.
归档时间:
15 年,6 月 前
查看次数:
500 次
最近记录: