창조유저그룹-커즈닷컴
Window close
ID :     PASS :   
   
  처음으로
  창조
  창조 소개
창조 다운로드
CUGz.com 소개
온라인 도움말
  커뮤니티
  가입인사
자유게시판
Q/A게시판
TIP/TECH
열린강좌
자주하는질문
아이디어게시판
  자료실
  소스자료실
프로그램자료실
기타자료실
명예의 전당
이미지 자료실
  지원/기타
  표준용어재정
구글 웹서치  
관리자 전용


창조 팁
- '창조' 에 관한 팁을 올리는 곳입니다. 다수의 이미지가 필요하시면 아래 '이미지 자료실' 에 업로드 후 불러와 주세요..


LIST ALL
Posted by 지상현2011-02-07 02:23:20, Hit : 5789
[all] 할당해() 자기대입 주의 (ㅎ문자열)
Homepage : http://ssidang.x-y.net
Post URL : http://cugz.sjworks.net/bbs/zboard.php?id=tip&no=448
할당해() 함수는 '대입문'과 같은 역할을 합니다.

예를 들어, 리스트박스0에 있는 모든 글자를 메모0으로 옮기려면
(메모0.내용 := 리스트박스0.내용 같은 것을 하고 싶을 때)

메모0.내용.할당해( 리스트박스0.내용 );

이렇게 처리합니다.

특히, 할당해() 함수는 같은 종류끼리 (또는 호환되는 종류끼리) 아무거나 대입할 수 있습니다.
ㅎ메모나 ㅎ리스트박스 같은 객체는 실제 담긴 내용은 다르지만 모두 ㅎ문자열 ('내용' 속성)이기 때문에 서로 대입, 즉 '할당해()'가 가능합니다.
  • 'ㅎ메모.내용'과 'ㅎ리스트박스.내용', 'ㅎ콤보박스.내용' 그리고 그냥 'ㅎ문자열'은 모두 'ㅎ문자열'과 같은 종류지만 똑같진 않습니다. 객체에 따라 기능이 다릅니다. 예를 들어 'ㅎ메모'의 경우는 파일저장해() 할 때 rtf로 저장하는 능력이 있습니다.


그런데, 'ㅎ문자열'에서 할당해() 함수는 대략 다음과 같이 구현되어 있습니다.

받는쪽 <- 주는쪽

받는쪽.갱신시작;
받는쪽.지워;
받는쪽.문자내용추가( 주는쪽 );
받는쪽.갱신끝;


받는쪽의 내용을 먼저 지우고 주는쪽의 내용을 추가해줍니다.
그런데, 받는쪽과 주는쪽이 같은 경우라면 지워()를 쓴 시점에서 받는쪽 뿐 아니라 주는쪽도 내용이 전부 사라지게 됩니다. 따라서 아무 내용도 추가되지 않습니다.

메모0.내용.할당해( 메모0.내용 );

이렇게 하면,

메모0.내용.지워;

와 결과가 완전히 같습니다.


자주 있는 경우는 아니지만, 창조(라기보단 창조에서 쓰는 델파이 VCL 구현)에서는 이런 식으로 자기 대입을 그다지 깔끔하게 처리하지 않기 때문에 코드를 짤 때 주의해야 합니다.

LIST ALL               GO TO THE TOP


N
   Subject
Posted by
Date
H
292
   제어판 열기 [5]
박종훈 2009/02/24  5834
291
   단축키 만들기... [6]
손상진 2004/06/17  5826
290
   [Tip] 인터넷 실시간 방송 재생(TV,라디오) [5]
권선중 2004/07/26  5824
289
   창조에서 핸들 다루기 - 꼭 알아두어야 할 중요한 사항 (rev.1) [3]
지상현 2006/05/21  5807
288
   버튼이 눌러질때 다른 그림이 뜨도록!!! [2]
Pueding 2002/09/10  5795
287
   [초급] 02. 명령어를 배워보자 - 기본 명령어 (1)
정윤부 2002/11/03  5792

   [all] 할당해() 자기대입 주의 (ㅎ문자열)
지상현 2011/02/07  5789
285
   [팁#2] 파일에서 정수값 읽기!
지상현 2005/10/05  5762
284
   메모 가지고 놀기! [3]
지상현 2006/07/25  5748
283
   압축률 안따지고 dll 파일 없이 파일 합치기 ㅡ ㅡ;; [3]
날개달기 2003/04/30  5738
282
   코딩시 키보드 노동 약간 줄이자; [5]
박종훈 2007/01/01  5732
281
   [ㅎ메모] 창조만으로 알수없는 것을 API로 얻기
박종훈 2008/07/19  5722
280
   ㅎ메모, 스크롤바 블록으로 자동으로 찾아가기.. [7]
손상진 2004/02/12  5721
279
   [팁]에디트에 적은 문자를 리스트박스에서 찾기..
김환욱 2002/11/24  5716
278
   [TIP] 프로그램 제작시 프로그램크기는 무시하세요.... [4]
권선중 2005/03/09  5715
277
   시스템 사용을 제한하는 레지스트리 값들[출처:http://delphi... [4]
Pueding 2003/10/12  5709
276
   ㅎ메모, ㅎ리스트박스 등에서, 속도향상 팁 [7]
박종훈 2006/11/11  5706
275
   도스용 백신을 쉽게 실행해 보자!!(좀 어색한데 -_-;) [2]
위자드 2003/10/13  5701
274
   메모 객체 글꼴 크기 조절 [2]
성인e 2009/09/30  5699
273
   [팁#6] 글씨 세로로 쓰기 [3]
ps.구루 2003/09/21  5697
272
   바이러스 백신에 오진되지 않게 하는 법
김대명 2011/04/23  5685
271
   효과음 많은 사이트.. [7]
변혁수 2004/07/25  5685
270
   [팁#8] 콤보박스에 감춰진 팁 [3]
ps.구루 2003/12/18  5685
269
   API에 쓰이는 상수 값 쉽게 알아내기 [1]
지상현 2006/09/24  5666
268
   음수형 -> 양수형 간단한 방법
지상현 2007/01/23  5663
LIST ALL   Prev [1][2] 3 [4][5][6][7][8][9][10]..[14] Next
Copyright 1999-2024 Zeroboard / skin by reedyfox in miniwini style
로그인
지우개 Expert 3.0
제작자 : 천호성 님 [LINK]
로그인
대박로또2005
제작자 : 최재일 님 [LINK]
로그인
1박종훈15292 점
2지상현8809 점
3손상진7388 점
4권선중6060 점
5이진백5174 점
로그인
가입일닉네임
05/31김동률
03/31홍형기
09/01o00pp99oo
12/27이재민
11/20이희철
로그인