由于我大部分时间都在使用数组,所以我想创建一个使用向量执行插入,删除,搜索和其他操作的类。
arrOperation obj = new arrOperation();
obj.insert(arr,val);
如上所示,我正在为通用实用程序类创建一个对象,其中我编写了用于插入,删除和其他操作的代码。我的问题是,编写这样一个类并使用其中的函数是否合适,或者在同一个类本身中插入,删除函数是否合适?我需要一些关于我可以制作一些代码的领域的想法,并且可以在我需要它时重复使用
答案 0 :(得分:5)
听起来你想要的是std::vector
类。追加是push_back(val),insert
是insert
,remove
是erase
。
答案 1 :(得分:2)
当你在问题中说“向量”时,你似乎在谈论内置数组。如果是这种情况,请查看std::vector<T>
,它几乎可以满足您的需求。
如果您正在讨论打包std::vector<T>
中未提供的某些操作,您应该考虑将它们作为适用于合适序列的“算法”。例如,std::vector<T>
没有用于对其元素进行排序的方法,但有一个算法std::sort()
,可以对任何随机访问序列进行排序,例如std::vector<T>
(只要当然,为类型T
定义了严格的弱顺序。
答案 2 :(得分:0)
如果要使用Java编程,请使用Java。 在堆上创建对象以向其他对象提供函数不是C ++的意思。
您可以使用自由函数,对现有类型进行频繁操作。
如果需要动态内存,可以使用标准库类。
提供操作的类只需要不允许存在自由函数的语言。