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


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


LIST ALL
Posted by 지상현2011-02-07 02:23:20, Hit : 5879
[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
15
   메모 객체 글꼴 크기 조절 [2]
성인e 2009/09/30  5786
14
   'ㅎ문자열' 사용하기 [1]
지상현 2011/01/14  5131
13
   [+] 크기조절해() 보충 설명
지상현 2011/01/15  4413
12
   메모, 선택문자위치로 스크롤하기 [1]
지상현 2011/01/17  5076

   [all] 할당해() 자기대입 주의 (ㅎ문자열)
지상현 2011/02/07  5879
10
   메모장의 찾아 바꾸기 기능
김대명 2011/08/25  5672
9
       [re] ㅎ메모의 64k 제한..
바람 2017/12/26  2544
8
     [re] ㅎ메모의 64k 제한..
바람 2017/10/19  2601
7
   메모의 64k 제한..
바람 2011/11/19  5591
6
     문자함수 사용하는 방법 추가 [1]
지상현 2011/12/22  4973
5
     [re] 마지막 부분에서 속도 느려짐 해결.
바람 2012/01/10  4506
4
   'ㅎ메모'의 문자찾아 속도 비교 2탄.[2011.12.20 12:45 내용... [1]
바람 2011/12/20  4700
3
   'ㅎ메모' 문자찾아 최종.
바람 2012/11/11  5119
2
   [창조 1.0] 'ㅎ메모'의 '문자찾아'
바람 2018/01/05  2636
1
   [창조 1.0] 팝업메뉴 사용 시 '제어'와 '보이기' 사용
바람 2018/01/05  2663
LIST ALL   Prev [1][2] 3
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이희철
로그인