[ν΄λμ€ μ μΈλΆ]
class ν΄λμ€ μ΄λ¦
{
μ κ·Ό μ§μ μ: // public, private, protected
λ°μ΄ν° νμ λ³μλͺ
; // λ©€λ² λ³μ
λ°μ΄ν° νμ ν¨μλͺ
; // λ©€λ² ν¨μ
};
** ν΄λμ€ μ μΈλΆμμ μ€λ₯Έμͺ½ μ€κ΄νΈ } μ μΈλ―Έμ½λ‘ (;)μ μμ§ λ§μ.
[ν΄λμ€ κ΅¬νλΆ]
λ°μ΄ν° νμ ν΄λμ€ μ΄λ¦::ν¨μλͺ
()
{
ν¨μ ꡬννκΈ°;
}
ν΄λμ€ μ μΈκ³Ό ν΄λμ€ κ΅¬νμΌλ‘ λΆλ¦¬νλ μ΄μ λ ν΄λμ€λ₯Ό λ€λ₯Έ νμΌμμ νμ©νκΈ° μν¨μ΄λ€.
μμ 3-1 Circle ν΄λμ€μ κ°μ²΄ μμ± λ° νμ©
#include <iostream> // νμ€ μ
μΆλ ₯ ν€λνμΌμ λΆλ¬μ΄
using namespace std; // std μ΄λ¦ 곡κ°μ μ μΈλ λͺ¨λ μ΄λ¦μ stdλ₯Ό μλ΅
class Circle // Circle ν΄λμ€λ₯Ό μ μΈ
{
public: // ν΄λμ€λ₯Ό μΈλΆμμ μ κ·Ό νμ©
int radius; // radiusλ μ μνμΌλ‘ μ§μ
double getArea(); // ν¨μ μ΄λ¦μ getAreaλ‘ μ νκ³ , doubleλ‘ μ§μ
};
double Circle::getArea() // Circle ν΄λμ€λ₯Ό ꡬν
{
return 3.14 * radius * radius; // getArea ν¨μμλ ν΄λΉ κ²°κ³Ό κ°μ λλ €μ€
}
int main()
{
Circle donut; // κ°μ²΄ donut μμ±
donut.radius = 1; // κ°μ²΄ donutμ λ³μμ κ° μ μ₯
double area = donut.getArea(); // κ°μ²΄ donutμ κ°μ getAreaμ ν¨μμ λ£μ΄ κ³μ°νμ¬ area λ³μμ μ μ₯
cout << "donut λ©΄μ μ " << area << endl; // κ³μ°λ κ°μ μΆλ ₯νλ νν
Circle pizza; // κ°μ²΄ pizza μμ±
pizza.radius = 30; // κ°μ²΄ pizzaμ λ³μμ κ° μ μ₯
area = pizza.getArea(); // μμμ area λ³μμ νμμ μ§μ νμ¬ νμ μ§μ μ μμ. λ³μμ ν¨μ κ³μ° κ°μ μ μ₯
cout << "pizza λ©΄μ μ " << area << endl; // κ³μ°λ κ°μ μΆλ ₯νλ νν
}
'π κ°μΈ νλ λͺ¨μμ§ π > βΊ `23 νκ³ C++ νλ‘κ·Έλλ° λΆνΈ μΊ ν βΊ' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[ν΄λμ€ μ μΈλΆ]
class ν΄λμ€ μ΄λ¦ { μ κ·Ό μ§μ μ: // public, private, protected λ°μ΄ν° νμ λ³μλͺ
; // λ©€λ² λ³μ λ°μ΄ν° νμ ν¨μλͺ
; // λ©€λ² ν¨μ };
** ν΄λμ€ μ μΈλΆμμ μ€λ₯Έμͺ½ μ€κ΄νΈ } μ μΈλ―Έμ½λ‘ (;)μ μμ§ λ§μ.
[ν΄λμ€ κ΅¬νλΆ]
λ°μ΄ν° νμ ν΄λμ€ μ΄λ¦::ν¨μλͺ
() { ν¨μ ꡬννκΈ°; }
ν΄λμ€ μ μΈκ³Ό ν΄λμ€ κ΅¬νμΌλ‘ λΆλ¦¬νλ μ΄μ λ ν΄λμ€λ₯Ό λ€λ₯Έ νμΌμμ νμ©νκΈ° μν¨μ΄λ€.
μμ 3-1 Circle ν΄λμ€μ κ°μ²΄ μμ± λ° νμ©
#include <iostream> // νμ€ μ
μΆλ ₯ ν€λνμΌμ λΆλ¬μ΄ using namespace std; // std μ΄λ¦ 곡κ°μ μ μΈλ λͺ¨λ μ΄λ¦μ stdλ₯Ό μλ΅ class Circle // Circle ν΄λμ€λ₯Ό μ μΈ { public: // ν΄λμ€λ₯Ό μΈλΆμμ μ κ·Ό νμ© int radius; // radiusλ μ μνμΌλ‘ μ§μ double getArea(); // ν¨μ μ΄λ¦μ getAreaλ‘ μ νκ³ , doubleλ‘ μ§μ }; double Circle::getArea() // Circle ν΄λμ€λ₯Ό ꡬν { return 3.14 * radius * radius; // getArea ν¨μμλ ν΄λΉ κ²°κ³Ό κ°μ λλ €μ€ } int main() { Circle donut; // κ°μ²΄ donut μμ± donut.radius = 1; // κ°μ²΄ donutμ λ³μμ κ° μ μ₯ double area = donut.getArea(); // κ°μ²΄ donutμ κ°μ getAreaμ ν¨μμ λ£μ΄ κ³μ°νμ¬ area λ³μμ μ μ₯ cout << "donut λ©΄μ μ " << area << endl; // κ³μ°λ κ°μ μΆλ ₯νλ νν Circle pizza; // κ°μ²΄ pizza μμ± pizza.radius = 30; // κ°μ²΄ pizzaμ λ³μμ κ° μ μ₯ area = pizza.getArea(); // μμμ area λ³μμ νμμ μ§μ νμ¬ νμ μ§μ μ μμ. λ³μμ ν¨μ κ³μ° κ°μ μ μ₯ cout << "pizza λ©΄μ μ " << area << endl; // κ³μ°λ κ°μ μΆλ ₯νλ νν }