λͺ¨λ μ€μ΅ μ½λλ κΉμ±μ½ λνλμ
"Do it ! CμΈμ΄ μ
λ¬Έ" μ±
μ λ΄μ©μ λ°νμΌλ‘ μ€μ΅νκ³ λ΄μ©μ μμ½ν κ²μ
λλ€.
β» μμ
μ©λκ° μλλ©°, tipsλ₯Ό ν΅ν΄ λ°°μ΄ λ΄μ©μ 볡μ΅νκ³ μ μ€μ€λ‘ 곡λΆνλ λͺ©μ μΌλ‘ μ¬λ¦¬λ κ²μ΄λ
λΆλ²μΌλ‘ μ¬μ©νλ κ²μ κΈμ§ν©λλ€.
ν¬μΈν° λ³μλ μΌλ° λ³μμ const ν€μλλ₯Ό μ¬μ©νλ μμΉκ° μ’ λ€λ₯΄λ€.
μλνλ©΄ ν¬μΈν° λ³μλ ν¬μΈν° λ³μμ μ μ₯λ κ°μ λ³κ²½νκ±°λ ν¬μΈν° λ³μκ°
κ°λ₯΄ν€λ λμμ κ° μ λ³κ²½νλ λ κ°μ§ ννλ‘ μ¬μ©ν μ μκΈ° λλ¬Έμ
λ€μκ³Ό κ°μ΄ const ν€μλλ₯Ό μ¬μ©ν μ μλ μμΉλ λ κ³³μ΄λ€.
μ΄λ κ² const ν€μλλ₯Ό μ¬μ©ν μ μλ μμΉκ° λ κ³³μ΄κΈ° λλ¬Έμ,
μ΄ μμΉλ₯Ό μ‘°ν©νλ©΄ ν¬μΈν° λ³μλ₯Ό μΈ κ°μ§ λ°©λ²μΌλ‘ μ μΈν μ μλ€.
1. int * const p;
pμμ const ν€μλλ₯Ό μ¬μ©ν κ²½μ°
pκ° κ°μ§κ³ μλ μ£Όμλ₯Ό λ³κ²½νλ©΄ λ²μν λ μ€λ₯κ° λ°μνλ€.
2. const int *p;
pκ° μ£Όμμ μ κ·Όν λ μ¬μ©νλ ν¬κΈ°(μλ£ν) μμ const ν€μλλ₯Ό μ¬μ©νλ©΄ *pλ₯Ό μ¬μ©νμ¬
λμμ κ°μ λ³κ²½νλ©΄ λ²μν λ μ€λ₯κ° λ°μνλ€.
3. const int * const p;
μμ κ³Ό λμμ λͺ¨λ constν€μλλ₯Ό μ¬μ©νκΈ° λλ¬Έμ pκ° κ°μ§κ³ μλ μ£Όμλ₯Ό λ°κΎΈκ±°λ,
*pλ₯Ό μ¬μ©νμ¬ λμμ κ°μ λ°κΎΈλ©΄ λ²μν λ μ€λ₯κ° λ°μνλ€.
κ²°λ‘ μ μΌλ‘ μΌλ° λ³μλ₯Ό λ€λ£° λλ³΄λ€ ν¬μΈν° λ³μλ₯Ό λ€λ£° λ μ€μν νλ₯ μ΄ λ λκΈ° λλ¬Έμ,
const ν€μλλ₯Ό μ μ νκ² μ νμ©νλ©΄ μ€μλ‘ μΈν λ²κ·Έ(μλ―Έμ μ€λ₯)λ₯Ό μ€μΌ μ μλ€.