( Tested on Linux/Cent OS 6.2 64 bit )
Let's say we have main function below....
int main(){
First *fp = new First[10]; // creating array of First object
delete [] fp;
return 0;
}
{If we have one of First classes below }// ??bytes of heap memory allocated
case 1:
class First{ double db; }// 8bytes * 10
class First{ int size; }// 4bytes * 10
class First{ int *pt; }// 8bytes * 10
case 2:
class First{ int size;
int *pt; }// 16 bytes * 10
class First{ int *pt;
int size; }// 16 bytes * 10
class First{ int size;
double db; }// 16 bytes * 10
class First{ double db;
int size; }// 16 bytes * 10
case 3:
class First{ int size;
int size2;
double db; }// 16 bytes * 10
class First{ double db;
int size;
int size2; }// 16 bytes * 10
class First{ int size;
double db;
int size2; }// 24 bytes * 10
case 4:
class First{ int size;
double db;
int size2;
char ch1; }// 24 bytes * 10
class First{ int size;
double db;
int size2;
char ch1;
char ch2;
char ch3;
char ch4; }// 24 bytes * 10
class First{ int size;
double db;
int size2;
char ch1;
char ch2;
char ch3;
char ch4;
char ch5; }// 32 bytes * 10
안드로이드 폰에 웹사이트 바로가기 만들기 (0) | 2019.03.03 |
---|---|
[C++] pipe() and fork() (파이프, 포크) (0) | 2019.02.15 |
[MyBatis] 전달받은 객체에 값 세팅하기 (selectKey) (0) | 2018.02.03 |
[Git] 태그 삭제하기 (removing git tag) (0) | 2018.01.24 |
[ Node.js in Action ] 13장 요약 (0) | 2017.06.03 |
JavaScript에는 세가지 primitive 데이타 타입이 존재합니다. 숫자, 스트링, 그리고 참, 거짓을 나타내는 boolean이 바로 그 데이타 타입입니다. 자바스크립트에는 또한 null 과 undefined 라는 데이타 타입이 있습니다. 좀 특수한 녀석들이죠.
그리고 마지막으로, 자바스크립트도 자바와 마찬가지로 객체타입을 지원합니다.
JavaScript에서 숫자는 소수점 형태의 값으로 표현됩니다. IEEE 754 표준에 정의된 64-bit 소수점 형태로 말이죠.
<script type="text/javascript"> <!-- var money; var name; //--> </script> |
여러개의 변수를 선언할 때 꼭 var를 앞에 붙여야 하나요? 아닙니다. 아래처럼 한줄에 var키워드를 한번만 써서 변수 두개를 선언할 수도 있습니다.
<script type="text/javascript"> <!-- var money, name; //--> </script> |
이렇게 선언된 변수에 값을 넣는것을 변수 초기화라고 합니다. 변수 초기화는 변수를 선언할 때 할 수도 있지만 나중에 할 수도 있습니다.아래 예제를 한번 볼까요?
<script type="text/javascript"> <!-- var name = "Ali"; var money; money = 2000.50; //--> </script> |
위 예제에서 name이라는 변수는 변수 선언과 동시에 초기화를 해주었습니다. 그런데 money변수는 선언을 하고 난 뒤에 나중에 변수를 초기화했죠.
여타의 프로그래밍 언어와는 다르게 자바스크립트는 변수의 타입을 지정해주지 않습니다. 변수에 들어갈 값이 스트링인지 숫자인지 관계가 없다는 말이죠. 이건 자바스크립트가 알아서 자동으로 케어해주니 신경쓰지 않으셔도 됩니다.
동일한 이름의 변수를 선언하게 된다면 로컬에서는 전역변수보다 로컬변수가 우선순위가 높기 때문에 로컬변수를 사용하게 됩니다.
아래 예제를 한번 보시죠.
<script type="text/javascript"> <!-- var myVar = "global"; // Declare a global variable function checkscope( ) { var myVar = "local"; // Declare a local variable document.write(myVar); } //--> </script> |
myVar라는 이름을 갖는 변수가 두 번 선언되었습니다. 하나는 전역변수이고 하나는 로컬 변수죠.
위 스크립트의 실행 결과가 어떻게 나와야 맞는 걸까요??
추측해보시고 결과는 스크립트를 실행시켜서 확인해보세요 ^__^
자바스크립트에서 변수이름을 정할때는 아래와 같은 규칙을 지키셔야 합니다.
JavaScript 예약어 사용 금지
숫자로 시작할 수 없다. 문자나 밑줄로 시작해야 한다.
대소문자를 구분한다.
abstract boolean break byte case catch char class const continue debugger default delete do double | else enum export extends false final finally float for function goto if implements import in | instanceof int interface long native new null package private protected public return short static super | switch synchronized this throw throws transient true try typeof var void volatile while with |
Reference : http://www.tutorialspoint.com/javascript/javascript_variables.htm
[Javascript / 자바스크립트] 강좌 #6 - Switch - Case 문 (0) | 2015.08.05 |
---|---|
[Javascript / 자바스크립트] 강좌 #5 - IF, IF-ELSE, IF-ELSE IF-ELSE 문 (0) | 2015.08.05 |
[Javascript / 자바스크립트] 강좌 #3 - 스크립트 코드의 위치 (0) | 2015.08.05 |
[Javascript / 자바스크립트] 강좌 #2 - 자바스크립트 미지원 브라우저에 경고하기 (0) | 2015.08.05 |
[Javascript / 자바스크립트] 강좌 #1 - Syntax ( 기본 문법 ) (0) | 2015.08.05 |