전체 글 (71) 썸네일형 리스트형 [C++] goto문 설명 및 예제 goto문 goto문은 프로그램을 실행하는 도중에 해당 레이블명이 있는 문장으로 프로그램의 제어를 강제적으로 이동시킨다. 레이블 표시가 있는 문장은 goto문보다 앞에 나올 수도 있고 뒤에 나올 수도 있다. 레이블명과 문장은 콜론(:)으로 구분한다. 일반적으로 한 개의 루프를 빠져나오는 경우에는 break문이 유용하지만, goto문은 다중 루프를 벗어나고자 할 때 좋다. goto 문은 동일 함수 내에서만 효력이 발생하며, 다른 함수로는 이동시킬 수 없다. 예제 #include using namespace std; int main() { int i = 1; first: cout [C++] 6-5 프렌드 연산자 함수 프렌드 연산자 함수 연산자를 특정 object에 대해 오버로드하는 경우, 연산자 함수를 프렌드 함수로 정의할 수 있다. 일반적으로 연산자 오버로드는 프렌드 함수보다 멤버 함수로 많이 이용된다. 프렌드 연산자 함수를 호출하는 경우, 이는 멤버 함수가 아니므로 this 포인터가 암묵적으로 전달되지 않는다. 따라서 프렌드 연산자 함수로 이항 연산자를 오버로드하는 경우에는 연산에 사용되는 2개의 object가 프렌드 연산자 함수의 매개변수에 전달되어야 한다. 단항 연산자를 오버로드하는 경우, 연산에 이용된 1개의 object가 프렌드 연산자 함수의 매개변수로 전달되어야 한다. 예제 #include using namespace std; class myscore { private: int kor; int eng; .. [C++] 6-4 []연산자의 오버로드 []연산자의 오버로드 배열 첨자 연산자 []를 오버로드할 때 C++에서는 이를 이항 연산자로 간주한다. []는 멤버 함수로만 오버로드가 가능하고 프렌드 함수로는 오버로드할 수 없다. 그리고 연산자 함수인 operator[]()의 인수는 int형으로 사용해야만 한다. 예제 #include using namespace std; class myclass { private: int a[4]; public: myclass() { int i; for (i = 0; i < 4; i++) a[i] = i; } int& operator[](int i) { return a[i]; } }; int main() { myclass ob; int i; for (i = 0; i < 4; i++) cout 이전 1 ··· 3 4 5 6 7 8 9 ··· 24 다음