티스토리 뷰
특정 컨트롤이나 변수에 의존적으로 값을 갖는 변수가 있을 수 있다.
예를 들어 MFC의 slider 컨트롤에서 물체의 투명도를 제어 한다고 해보자.
그럼 투명도를 관리하는 컨트롤러 이름은
m_nSliderOpacity;
그리고 실제로 Object의 투명도가 제어 되는 부분은
pObject->SetOpacity(fValue);
라고 하면
m_nSliderOpacity의 POSITION과 pObject->setOpacity의 fValue는 매우 디펜던트하게 움직인다.
즉 하나만 바뀔 수는 없다는 것이다.
슬라이더는 내가 움직여 주는거잖아? 라고 생각 할 수도 있겠지만. 예를 들어 '탭 구성'으로 화면을 적용 하였을 때
다른 탭으로 갔다가 돌아오는 경우, 슬라이더를 기존에 사용한 값으로 변경해 주어야 하는 경우가 생긴다.
이때 m_nSliderOpacity.setPos( value ); pObject->SetOpacity(fValue)... 이런식으로 해주는건 안 좋다.
이 한경우만 그러면 몰라도, 다른 곳에서도 바꿔줘야 하는 경우가 생긴다면 전부다 이런식으로 하나 하나 다 쳐줘야 할 것이다.
이를 위해서 SetOpacity 같은 setter를 만들어서 동시에 값이 움직이도록 하는 것을 추천한다.
즉 이를 훈련 하기 위해, private등의 변수 값을 자기 자신 클래스 내에서 제어 함에 있어서도 setter/getter를 쓰는 것이 좋을 것 같다는 생각이 들었다.
그럼 의존적으로 움직이는 수 많은 변수들에 대해 덜 햇깔리게 될 테니깐.
결론 : 세터&게터를 쓰자. 세터 게터가 아닌 상태에서 멤버변수값 함부로 막 바꾸지 말자. 지역 변수는 뭐 맘대로 볶고 지지고 해도 괜춘함.
'JHB > 잡다한 이야기' 카테고리의 다른 글
경력있는 프로그래머는 무엇이 다른가? (0) | 2011.09.16 |
---|---|
유니코드와 멀티바이트, UTF-8 이런 놈들은 무엇인가? (3) | 2011.05.12 |
[잡설] final과 const와 포인터와 클래스대한 고찰 (1) | 2011.03.22 |
[잡설] 같은 기능을 갖는 인스턴스를 여러개 생성하지 말자 (0) | 2011.03.15 |
[C++] 파라미터 없는 void는 웬만하면 지양하자 (0) | 2011.02.15 |
[C++ / STL] iterator는 포인터가 아닌데 포인터 처럼 쓴다. (0) | 2011.01.26 |
사랑에 관한 시 (0) | 2010.06.06 |
[세미나] 터치 스크린의 캘리브레이션 원리와 방식 (0) | 2010.04.13 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- Python
- db
- 리눅스
- jni강좌
- NDK
- C
- AWS
- MFC
- it
- linux
- 안드로이드
- winapi
- database
- algorithm
- 프로그래밍
- Visual C++
- gcc
- source
- jni
- java
- android
- Troubleshooting
- 음악
- Quiz
- API
- driver
- Cloud
- kering
- C++
- 드라이버
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함