|
대강 아는 것만 말씀드리겠습니다.. (솔직히 아는게 별로 없어서~)
:위와 같이 template을 이용해서 프로그램을 만들었습니다. 근대 멤버함수 Print에서 m_pData가 기본 자료형일때는 잘 동작하는데 객체(클래스)일때는 처리가 곤란합니다.
멤버함수 Print 에서 객체를 사용하면 안되는 것은 ostream의 cout에서 기본 자료형은 지원하지만 사용자 정의 객체(?)는 당연히 지원을 하지 않겠죠. 지원하게 만들려면 ostream의 오버로딩된 <<연산자에 사용자정의객체를 추가 해주면 될겁니다.(아마도, 복잡하지만)
:객체는 '객체.멤버' 형식으로 읽어 와야 하쟎아요 근대 기본 자료형은 다이렉트로 바로 읽어 오니 서로간에 마찰이 생깁니다. 이경우 고수님들은 어케 처리하나요?
이말은 무슨 소린지-_-ㅋ(좀 자세히 써주셨으면 좋았으련만)
:그라고 이건 왜또 작동을 안하나요
: list.Insert(1);
: list.Insert(2);
: list.Insert(3);
: 인수로 변수가 아니라 상수를 대입하니 에러가 납니다. 정말 환장합니다.
CList class의 멤버함수들가 인수를 전달할 때 참조형을 쓰고있지요. 그런데 1, 2, 3 등의 상수는 변수가 아니라 참조를 할 수가 없어서 컴파일 시간 에러가 나는 거지요~
:C은 너져분해도 이런 문제는 없는데..... 고수님들이 이번에 안가르쳐주면 정말로 C++버려뿔까 보당 말만 객체 지향이지 배워서 써먹으려면 꼭 저런씩으로 사람 속을 팍 팍 뒤집어 버리네..... 교수들은 뭐하나 몰라 돈만 받아 먹고 저런것도 안가르쳐주고..... 아이참 신경질나..... 이건 베이직보다 더하다 더해.....
객체 지향 프로그래밍 방식은 c++에서뿐만 아니라 다른 언어에서도 많이 쓰이고 있지요. 개념을 확실히 알고 넘어가면 나중에 고생을 안합니다. 그리고 교수님은 열심히 배우려고 하지 않는 학생들에게는 잘 안가쳐주거든요. 악착같이 매달리면서 배우세요~ 그래도 교수님이 가장 가까운 고수일텐데요~
죄송합니다. 대강 아는 한도 내에서 대답해 드렸습니다..
|