C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[46310] Re:변수 선언시 위치에 따른 속도 차이가 있습니까???
왕대박 [emrwo] 3091 읽음    2006-08-25 00:50
고수는 아니지만, 한말씀드리자면...

사실상 속도 차이가 생깁니다.
특히, 반복이 심한 알고리즘을 돌리는 경우에는 차이를 볼 수 있습니다.
따라서, 누적되는 값이나, 자주 사용하는 변수의 경우 전역변수로 쓰거나,
static 변수를 사용해서 처리하는 것이 좋습니다.

변수 설정하는 것도 그렇지만,
for문등 처럼 순차적인 흐름이 아닌 역흐름을 만들경우도
반복이 심한 알고리즘에서는 속도 차이를 냅니다.
결론은 몇개 않되는 반복처리의 경우는 반복문(for, while, do while등)보다 차리리
쭉~~나열을 해서 처리하는 편이 좋고,

곱셈이나 나눗셈 역시 반복이 심한 알고리즘에서는 속도차이가 생깁니다.
결론은 비트연산을 통해서 처리하는 편이 좋습니다.

최종결론은 이렇습니다.
가급적 어셈블러와 비슷한 방식으로 코딩을 하는 것이 속도면에서 가장 유리합니다.
그러나, 일반적인 프로그램의 경우에는 어떻게 쓰더라도 별 차이가 없습니다.
즉, 10개 정도의 변수는, 반복이 심한 알고리즘을 적용하지 않는 이상,  차이가 없다.가  맞습니다.


이범상 님이 쓰신 글 :
: 안녕하세요.
: 항상 여기서 많은 도움 얻어가는 사람입니다.
:
: 또 질문이 있습니다. ^^
:
: 전역변수로 10개의 변수를 선언하고 로컬에서 사용하는거 하고
:
: 지역변수로 10개의 변수를 선언하고 사용하는거와 속도 차이가 있습니까???
:
: 예를 들면
:
: for문에 안에 변수를 넣어서 for문이 돌때마다 변수 생성시키고 변수값 입력하고 끝나면 변수 사라지는 것과
:
: for문에 들어갈 변수들을 전역으로 선언시키고 for문이 돌때 그 변수에 값만 대입하는 방식이
:
: 속도 차이가 있습니까???
:
: 제 생각으로는 변수 생성과 제거시에 약간의 속도가 차이 날꺼 같은데
:
: 이게 변수가 많아지면 더 커지지 않을까 해서요
:
: 이번에도 고수님들의 답변 부탁드립니다. ^^

+ -

관련 글 리스트
46308 변수 선언시 위치에 따른 속도 차이가 있습니까??? 이범상 1064 2006/08/24
46310     Re:변수 선언시 위치에 따른 속도 차이가 있습니까??? 왕대박 3091 2006/08/25
46326         Re:Re:변수 선언시 위치에 따른 속도 차이가 있습니까??? 열씸! 1638 2006/08/27
46329             Re:Re:Re:변수 선언시 위치에 따른 속도 차이가 있습니까??? 왕대박 1466 2006/08/27
46334                 Re:Re:Re:Re:변수 선언시 위치에 따른 속도 차이가 있습니까??? 열씸! 1469 2006/08/28
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.