컴퓨터 엑셀 워드 포토숍 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Previous Post Perl/펄] 배열 요소 순서 랜덤하게 무작위로 뒤섞기; Array Random-Shuff...Java/자바] 자연 로그의 밑 e 상수 구하기 출력; Natural Logarithm, ...C언어] 자연 로그의 밑 e 상수 출력 사용법; Natural Logarithm, Eule...C언어] 배열 합계, 산술 평균 구하기; Array Sum, Average (Mean)Perl/펄] 배열 합계, 산술 평균 구하기; Array Sum, Average (Mean...Vim Vi Gvim 다른 이름으로 저장, 새 이름으로 파일 저장 명령어; Save As ...자바스크립트] 문자열을 배열로 변환, 요소 분리하여 저장; Split String Java...자바스크립트] 배열을 문자열로 변환, 요소 합치기; Join Array JavaScript...자바스크립트] 1차원 배열 선언, 초기화, 출력; Array JavaScript자바스크립트] 2차원 배열 만들기, 초기화, 출력 (배열의 배열); Two Dimensio...

Perl/펄] 상수 정의 방법; Use Constant Pragma

Saturday, February 10, 2007

변수와 달리 상수(Constant)는 값을 변경할 수 없기에, 변경되면 안되는 값을 상수로 정의해 놓으면 안전하게 사용할 수 있습니다. 또한 기억하기 힘든 값을, 간단하고 분명한 이름으로 정의해 놓고 사용하는 용도도 있습니다.

펄은 간단한 스크립트 언어이기에, 상수가 그리 절실히 필요하지 않습니다. 그래서 기본적으로는 상수를 지원하지 않고, use constant 라는 프라그마(pragma)를 사용하여 상수를 구현합니다.

상수 선언, Constant 만들기 예제


파일명: example.pl
#!/usr/bin/perl
use strict; use warnings;


# 상수 하나씩 정의
use constant PI    => 3.14159265358979323846;
use constant SIZE  => 255;
use constant NAME  => "똠방각하";


# 여러 개의 상수를 한꺼번에 정의하기
# (다음은 localtime 함수의 반환값 요소들의 번호임)
use constant {
  SEC   => 0,
  MIN   => 1,
  HOUR  => 2,
  MDAY  => 3,
  MON   => 4,
  YEAR  => 5,
  WDAY  => 6,
  YDAY  => 7,
  ISDST => 8,
};


# 상수의 값이 리스트인 경우
use constant WEEKDAYS => qw(
  Sunday Monday Tuesday Wednesday Thursday Friday Saturday
);



print PI, "\n";
# 출력 결과: 3.14159265358979

print SIZE, "\n";
# 출력 결과: 255

print NAME, "\n";
# 출력 결과: 똠방각하


print YEAR, "\n";
# 출력 결과: 5

print WEEKDAYS, "\n";
# 출력 결과: SundayMondayTuesdayWednesdayThursdayFridaySaturday




만약 이미 만들어진 상수에 값을 대입하여 변경하려면 Can't modify constant item in scalar assignment 이런 에러가 납니다.

또한, 같은 이름의 상수를, 다른 값으로 다시 정의하면
Constant subroutine main::PI redefined at D:/Perl/lib/constant.pm 이런 에러가 납니다.


▶▶ Perl/펄] 원주율 상수 선언; 파이 값 Constant 정의; PI, M_PI

0 Comments:

Post a Comment

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Categories
Previous Posts
Monthly Archives
Top