我试图实现Vec :: erase()自定义函数用于学习目的,类似于原始Vector类包含的功能。这是我到目前为止所得到的:
localhost/webpages/organizer 2.0/api/test/hello
我的简化版首先检查要删除的元素是否是最后一个。在这种情况下,我们只是破坏元素并保持内存未初始化。如果元素位于Vec中间的某个位置,那么我们创建一个大小为-1的新Vec,为此大小分配内存,将前一个Vec中的元素复制到擦除的元素,然后在擦除后附加所有剩余元素一。然后我们使用函数uncreate()销毁原始Vec并简单地重新分配数据并利用新Vec中的新值。可能是代码正确的想法,但实施是一场彻底的灾难。我有这个代码的几个错误
1> source.cpp(131):错误C2440:'初始化':无法转换自 ' int *'到' Vec :: size_type' 1> source.cpp(131):注意:没有 可以进行此转换的上下文 1 GT; source.cpp(126):注意: 在编译类模板成员函数' int时 * Vec :: erase(int *)' 1> source.cpp(156):注意:参见函数模板实例化' int> * Vec :: erase(int *)'存在 编译 1> source.cpp(149):注意:请参阅类模板的引用 实例化' Vec'正在编制
请帮忙。任何建议将不胜感激。