소스 ¶
~cpp #include <iostream> using namespace std; class String { int m_number; public: String(int input_number); String(); ~String(); int check(int check_number); }; String::String(int input_number) { m_number = input_number; cout << "클래스가 생성 되었습니다." << endl ; } String::String() { m_number = 0; } String::~String() { cout << m_number << "를 가진 클래스가 파괴 되었습니다." << endl ; } int String::check(int check_number) { if( m_number == check_number ) { return 1; } else { return 2; } } int main() { String *test[255]; int number; for( int i = 0; i < 255; i++) { cin >> number; int check2=0; int check_number[255] ; for (int a=0 ; a<255;a++) { check_number[a]=0; } if( number ==0 ) { for(int j = 0;j<i;j++) { delete test[j]; } return 0; } else { for(int k = 0; k< i ; k++) { check_number[k] = test[k]->check(number); } for(k=0 ; k<255 ; k++) { if(check_number[k] == 1) { delete test[k]; for(int l = k; k<i-1;k++) { test[k] = test[k+1]; } check2 = 1; i--; } } if(check2==0) { test[i] = new String(number); } } } return 0; }
----
실행되는거만을 목적으로 지저분하게 만들었다. 그런데 버그가 있다 최경현
05학번만의C++Study/숙제제출
실행되는거만을 목적으로 지저분하게 만들었다. 그런데 버그가 있다 최경현
- 확실히.ㅎㅎ 버그가 있네. 이 버그는 클래스를 삭제한 뒤에 그 공간이 비게되는데, 거기에서 값을 체크하는 함수를 실행시키려고 시도했기 때문에 발생하는 문제야.
----
05학번만의C++Study/숙제제출