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


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


LIST ALL
Posted by 지상현2011-02-07 02:23:20, Hit : 5763
[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
317
       [re] ㅎ메모의 64k 제한..
바람 2017/12/26  2407
316
   메모장의 찾아 바꾸기 기능
김대명 2011/08/25  5580
315
   자동 파일명 생성
김대명 2011/08/06  4009
314
   pi 구하기
성인e 2011/06/04  4435
313
   PC 내부스피커로 소리 내기
김대명 2011/05/27  4464
312
   smi 자막 출력
성인e 2011/05/24  4273
311
   간단히 문자에 연속된 수를 쓰고 출력 [13]
성인e 2011/05/15  4348
310
   바이러스 백신에 오진되지 않게 하는 법
김대명 2011/04/23  5665
309
   실행시 인자 쉽게 추출하기 [1]
김대명 2011/03/30  4168
308
   버전업 규칙이라네요
김대명 2011/02/07  4964

   [all] 할당해() 자기대입 주의 (ㅎ문자열)
지상현 2011/02/07  5763
306
   [0.9b] 사용자함수 하나로 여러 DLL 함수 + 일반 함수 쓰기!
지상현 2011/02/02  4995
305
   [버그] 사용자함수 심각한 버그 [1]
지상현 2011/02/02  5439
304
   프로젝트 파일 (.nhp)과 창 파일 (.nhw)은 같은 폴더에 있어...
지상현 2011/01/30  4762
303
   프로젝트 만들 때 생기는 .cfg 파일
지상현 2011/01/29  4792
302
   [0.9b] 버튼에 들어있는 기본 기능을 이용해 봅시다 [2]
지상현 2011/01/18  4056
301
   [0.9b] 객체 글꼴 '돋움 10pt'에서 '굴림 9pt'로 쉽게 바꾸기
지상현 2011/01/18  4020
300
   [0.9b] 창이 테마 안 먹고 해괴해지는 문제 피하기
지상현 2011/01/18  3880
299
   [버그] ㅎ배경.사각칠해() 이상한 동작
지상현 2011/01/17  4070
298
   ㅎ메모, 선택문자위치로 스크롤하기 [1]
지상현 2011/01/17  4982
297
   [+] 크기조절해() 보충 설명
지상현 2011/01/15  4278
296
   [+] ㅎ그림판 보충
지상현 2011/01/15  3756
295
   [버그] 주석에서 괄호를 쓰지 않는 것이 좋습니다. [1]
지상현 2011/01/14  4060
294
   ㅎ버튼, ㅎ밑판 등의 핸들 구하기 [1]
지상현 2011/01/14  4448
293
   [+] 'ㅎOLE도구' 도움말 정정
지상현 2011/01/14  3710
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이희철
로그인