연산자 과부하 - =std :: vectors를 사용하지 않고 연산자 - =를 사용하여 동적으로 할당 된 객체 배열에서 요소를 제거하는 방법?
렌터카에서RentACar& operator-=(const Automobile& av)
나 자동차의 동적으로 할당 된 어레이가 *는
그래서 어떤a
다음
av.brand
와 동일한
a.brand
을 가지면 제거되어야한다고 말할 수
한 객체에 할당 된 메모리가 해제됩니다.
나는 sth라고 생각했다. 그것은 동일한 브랜드를 가진 객체를 찾지 못한다면 * 반환하지만, 만약 그렇다면 a-1 크기의 새로운 자동차 배열에 공간을 할당하고, 객체를 할당하고, 동일한 브랜드의 객체를 건너 뜁니다.하지만 그것을 쓰는 방법을 모른다.
벡터로 작성하는 방법을 모르겠지만 어쨌든 나는 시험을 위해 공부하고 우리는 시험에 사용할 수 없으므로 벡터를 사용하지 않았다. 그래서 나는 이것을해야한다. 그것은 바보 같은 구현입니다!
감사합니다.
그건 남용 연산자 오버로드 101입니다. Find_and_remove 또는 이와 비슷한 멤버 함수를 사용하십시오. – jrok
배열에서 요소를 삭제하는 것이 비효율적 인 경우 연결된 목록을 고려하십시오. – HAL
내가 sth을 안다면. 내가 그랬던 것처럼! – STEFS