define 과 cost
c++ 작업중에 cost를 쓰지 않고 오로지 define으로만 작업하면 무슨 문제가 생기나요?
답변 3
0
변수의 사용범위만을 놓고 본다면 정확합니다.
define은 전역변수처럼 어떤 함수에서든 호출할 수 있고,
const는 지역변수처럼 변수가 호출된 함수 내부에서만 사용할 수 있도록 코딩할 수 있습니다.
0
define과 const 모두 상수를 만드는 C/C++ 키워드입니다.
따라서 상수를 사용하고자 할 때 define 혹은 const 모두 사용가능하며,
오로지 define으로만 작업한다고 하더라도 큰 문제는 발생하지 않습니다.
다만, define의 경우에는 주로 전처리 지시자가 선언되는 부분에 선언되기 때문에
모든 block에서 접근할 수 있습니다.
그에 반해 const는 선언된 블록 내부에서만 사용할 수 있습니다.
따라서 사용되는 변수의 지정범위를 결정할 수 있어야 하는 C++의 기조상 const가 보다 바람직한 사용방법입니다.
#define MAX 4
int main() {
//MAX만 사용할 수 있으며, TEMP는 사용할 수 없음,
return 0
}
void func() {
const int TEMP = 4;
//MAX와 TEMP 모두 사용할 수 있음
}
null 문자가 포함되면 왜 뒤에 불필요한 것들이 사라지나요?
0
557
1
강의 중 궁금한게 있습니다.
0
402
0
포인터 연산 강의
0
373
1
강의중 궁금한 내용이 있습니다
2
489
3
(int*)이 어떤 원리인건지 잘 이해가 안되요 ㅜ
1
455
0
char형과 char 배열을 차이점이 뭔가요
0
388
0
오토를 맹신하지 말라는 것이 무슨 뜻인가요?
0
328
1
안녕하세요 class의 멤버함수에 관련하여 질문이 있습니다.
0
246
0
강의 잘 듣고있습니다. 그런데 소스코드에 오타가 있는듯합니다.
1
331
0
포인터를 증가시키거나 감소시킨 상태에서는 delete 사용이 불가능한가요?
0
459
0
const float PI =3.14159265; 로 선언하고 원의 넓이를 구할 때 궁금한 것이 있습니다.
0
657
1
iosteam 헤더 파일 중복
0
361
1
함수 뒤 세미콜론
0
319
0
함수는 원본이 아닌 복사본을 사용한다는 말에 대해서 질문있습니다
0
241
0
sizeof arr에서
0
411
3
포인터를 이용한 주소값이 이상합니다
0
287
1
바이트와 관련하여서 질문이 있습니다
0
256
1
출력이 안되요
0
276
0
마지막에 main.cpp 에서
1
261
0
예제코드 오타 있어요
1
202
0
함수의 대괄호 뒤에 ; 가 붙는것과 안뭍는것의 차이가 뭔가요?
0
218
0
new/delete 연산자
1
257
1
컴파일에러
1
281
1
string에서 문자열 길이
1
261
1





