vector class 복사 생성자 질문

ewqqwe의 이미지

A라는 클래스에서 B라는 클래스로 복사를 하려고 하는데요
아래와 같이 생성자를 만들었는데
값이 자꾸 A나 B클래스를 수정하면 값이 같이 바뀌네요
어디가 잘못된걸까요?

Item(const Item &tempClass)
{
setCnt(tempClass.cnt);
// setInfo함수는 setInfo(int Cnt){cnt = Cnt;} 와 같이 되어있습니다
}

익명 사용자의 이미지

1. Item의 멤버 필드가 cnt 뿐인가요?

2. 복사 생성자라면 일반적으로 const Item &tempClass와 같이 파라미터를 받을텐데 왜 포인터를 받았죠?
이러면 컴파일러가 쥐도새도 모르게 (얕은 복사를 하는) 디폴트 복사 생성자를 만들어줍니다.

ewqqwe의 이미지

그리고 cnt 말고도 몇개 있는데
굳이 필요 없다 생각해서 생략했습니다
복사해서 쓰다가 잘못한거같네요 ㅎ;;
&사용해서 했었습니다

ewqqwe의 이미지

.