가장 원시적인 방법은 구조체를 만들어서 리턴해 주는 방식. typedef struct { int num1, num2; } s; 이런 식으로 구조체를 선언하고 구조체 타입을 리턴해 주는 거지.
ㅅㅅㅅ(125.128)2015-05-21 21:27
ㄴ 그건 좇또 야메롱다....
Okabe(119.71)2015-05-21 21:27
두번째 방법은 C++라고 했으니 STL의 std::pair 클래스로 묶어서 주는 방법.
ㅅㅅㅅ(125.128)2015-05-21 21:28
세번째 방법은 매개 변수에 int *나 int &로 받아서 리턴 값을 그 쪽으로 주는 방법.
ㅅㅅㅅ(125.128)2015-05-21 21:28
int xxx(int *return_2); 식으로 하든 void xxx(int *return_1, int *return_2); 식으로 하든. 공평하게 디자인 할 거면 후자가 낫긴 하겠네.
ㅅㅅㅅ(125.128)2015-05-21 21:29
void xxx(int *return_1, int *return_2); 에서 반환 값이 없어서 허전해 보이면 bool xxx(int *ret_1, int *ret_2); 식으로 한 뒤 리턴 값은 함수가 정상 동작했는지 여부를 리턴하는 것도 좋겠지. 하지만 이건 C 스타일이라서...(C++에서는 오류가 나면 예외를 throw해 주는 게 정상)
ㅅㅅㅅ(125.128)2015-05-21 21:30
포인터를 쓰는 게 가장 쉬운방법 아님>
뇌지랄(nathan)2015-05-21 21:30
난 참조를 사랑해~
codesafer(codesafer)2015-05-21 21:30
C++에서는 참조를 쓰는 게 standard죠. 포인터의 unsafe함을 없애려고 시도한 게 참조형이니깐... null 값을 절대로 가리킬 수 없으니 ㅋㄷㅋㄷ 그럼 포인터에서의 NULL을 쓸 경우는 어떻게 해야 하느냐? 예외를 throw하는 게 일반적.
ㅅㅅㅅ(125.128)2015-05-21 21:32
하지만 뭐 new, delete 연산자라든지... this 등 아직도 C++에는 포인터를 언어 자체에서도 막 쓰이고 있어서 참조형만 쓸 수도 없는 노릇이죠.
방법은 크게 세 가지가 있음.
가장 원시적인 방법은 구조체를 만들어서 리턴해 주는 방식. typedef struct { int num1, num2; } s; 이런 식으로 구조체를 선언하고 구조체 타입을 리턴해 주는 거지.
ㄴ 그건 좇또 야메롱다....
두번째 방법은 C++라고 했으니 STL의 std::pair 클래스로 묶어서 주는 방법.
세번째 방법은 매개 변수에 int *나 int &로 받아서 리턴 값을 그 쪽으로 주는 방법.
int xxx(int *return_2); 식으로 하든 void xxx(int *return_1, int *return_2); 식으로 하든. 공평하게 디자인 할 거면 후자가 낫긴 하겠네.
void xxx(int *return_1, int *return_2); 에서 반환 값이 없어서 허전해 보이면 bool xxx(int *ret_1, int *ret_2); 식으로 한 뒤 리턴 값은 함수가 정상 동작했는지 여부를 리턴하는 것도 좋겠지. 하지만 이건 C 스타일이라서...(C++에서는 오류가 나면 예외를 throw해 주는 게 정상)
포인터를 쓰는 게 가장 쉬운방법 아님>
난 참조를 사랑해~
C++에서는 참조를 쓰는 게 standard죠. 포인터의 unsafe함을 없애려고 시도한 게 참조형이니깐... null 값을 절대로 가리킬 수 없으니 ㅋㄷㅋㄷ 그럼 포인터에서의 NULL을 쓸 경우는 어떻게 해야 하느냐? 예외를 throw하는 게 일반적.
하지만 뭐 new, delete 연산자라든지... this 등 아직도 C++에는 포인터를 언어 자체에서도 막 쓰이고 있어서 참조형만 쓸 수도 없는 노릇이죠.
두개 내놓으라고 했는데 한개 주면 뿔남
아 걍 구조체로해야겠어요 ~ ㅋㅋ
ㅋㅋㅋ
http://autogram.tk/이
중고차 어플리케이션 어떤가요?