|
다음과 같이 하니까 그렇군요
//test.cpp
#include <iostream>
int & test(int & n);
int main(void)
{
int num;
num = 3;
cout << num << endl;
test(num) = 10;
cout << num << endl;
return 0;
}
int & test(int & n)
{
return n;
}
김영일 님이 쓰신 글 :
: C++ 기초플러스 3판에 보면 함수에 값을 대입하는 것이 있는데 어떻게 하여야 하나요?
:
: 책에 의하면
: 배열 클래스인 ArrayDb 클래스를 마치 배열처럼 이용하려는 것인데
:
: //클래스 선언부
: class ArrayDb
: {
: private:
: unsigned int size;
: double * arr;
: public:
: ---중략
: virtual double & operator[](int i);
: virtual const double & operator[](int i) const;
: --중략
: };
:
: //클래스 구현
: --중략
: double & ArrayDb::operator[](int i)
: {
: return arr[i];
: }
:
: //클라이언트에서 배열 클래스 사용
:
: ArrayDb scores(5,2.0);
:
: cout << scores[1] << endl;
:
: scores[i] = 0.5; //이 부분이 함수(operator[](int i))에 대입하는 문인데
: 이해가 안가는 군요
:
: operator[](int i)함수는 리턴하게 되어있는데 어떻게 값을 함수에 대입하는지........
:
:
:
:
:
:
:
:
|