πŸ’» Dev & CSC++ Programming

C++ Programming Ch.7 Exercise 12 Solution

Problem: μ •μˆ˜ 배열을 항상 증가 순으둜 μœ μ§€ν•˜λŠ” SortedArray 클래슀λ₯Ό μž‘μ„±ν•˜λ €κ³  ν•œλ‹€. μ•„λž˜μ˜ main() ν•¨μˆ˜κ°€ μž‘λ™ν•  만큼만 SortedArray 클래슀λ₯Ό μž‘μ„±ν•˜κ³  +와 = μ—°μ‚°μžλ„ μž‘μ„±ν•˜λΌ. 1 2 3 4 5 6 7 8 9 10 11 12 13 class SortedArray{ int size; // ν˜„μž¬ λ°°μ—΄μ˜ 크기 int *p; // μ •μˆ˜ 배열에 λŒ€ν•œ 포인터 void sort(); // μ •μˆ˜ 배열을 μ˜€λ¦„μ°¨μˆœμœΌλ‘œ μ •λ ¬ public: SortedArray(); // pλŠ” NULL둜 sizeλŠ” 0으둜 μ΄ˆκΈ°ν™” SortedArray(SortedArray& src); // 볡사 μƒμ„±μž SortedArray(int p[], int size); // μƒμ„±μž. μ •μˆ˜ λ°°μ—΄κ³Ό 크기λ₯Ό μ „λ‹¬λ°›μŒ ~SortedArray(); // μ†Œλ©Έμž SortedArray operator+ (SortedArray& op2); // ν˜„μž¬ 배열에 op2 λ°°μ—΄ μΆ”κ°€ SortedArray& operator= (const SortedArray& op2); // ν˜„μž¬ 배열에 op2 λ°°μ—΄ 볡사 void show(); // λ°°μ—΄μ˜ μ›μ†Œ 좜λ ₯ }; 1 2 3 4 5 6 7 8 9 10 11 12 int main() { int n[] = { 2, 20, 6 }; int m[] = { 10, 7, 8, 30 }; SortedArray a(n, 3), b(m, 4), c; c = a + b; // +, = μ—°μ‚°μž μž‘μ„± ν•„μš” // + μ—°μ‚°μžκ°€ SortedArray 객체λ₯Ό λ¦¬ν„΄ν•˜λ―€λ‘œ 볡사 μƒμ„±μž ν•„μš” a.show(); b.show(); c.show(); } Execution Result: ...

March 6, 2020 Β· 3 min Β· Sobamemil