자바 혹은 c++에서 변수나 객체 선언은 주로 어디서 하나요?
글쓴이: vudghkzm / 작성시간: 금, 2005/04/22 - 6:09오후
C는 변수의 선언을 반드시 코드 처음 부분에다가 해야 하지만 자바 혹은 C++은 코드 중간중간에 할 수가 있는건 다들 아시고 계실건데요..
그래서 저는 그때 그때 변수나 객체가 필요할 때 마다 선언하고 사용하고 있긴 한데요. 나중에 코드를 볼때나 다른 코드를 분석할 때 선언이 중간중간에 되어 있으면 보기가 약간 불편할때가 있더라구요..
많은 분들은 주로 선언을 윗 부분에 몰아서 하시는 지 아니면 그때 그때 하시는 지 궁금하네요..
Forums:
저는 그냥 소스 전체적으로 사용되는 객체나 변수는 클래스 하나를 만들어서
저는 그냥 소스 전체적으로 사용되는 객체나 변수는 클래스 하나를 만들어서 거기서 사용하구요 그리고 그 클래스에서만 사용되는 변수나 객체는 클래스 맨 앞쪽에 하는 편입니다.뭐 그때 그때마다 사용하는 경우도 있지만 대체로 이렇게 합니다.
인생이란게 다 그런게 아니겠어요....? 뭘(?)
http://schutepen.egloos.com
Re: 자바 혹은 c++에서 변수나 객체 선언은 주로 어디서 하나요?
변수 필요할때마나, 윗부분으로 올라가, 변수 선언하고 그러면
더 불편하지 않나요? 한동안 C++로만 코딩하다가
요즘 C로 코딩할 일이 생겼는데, C++의
변수선언방식에 한동안 익숙해져 있다보니, 이런점이 불편하더군요.
Efficient C++에서 본 내용인데,
C에서는 어쩔수 없지만, C++에서는 메모리 효율상,
필요할때 변수나 객체를 선언해 쓰라고 하더군요.
관련 로직 근처에 변수가 선언되어 있으면 저는 더 알아보기 쉽더라구요.
C++에서는 선언과 동시에 초기화를 하는 것이 권장되는 스타일입니다.
C++에서는 선언과 동시에 초기화를 하는 것이 권장되는 스타일입니다.
이것은 초기값이 명확하게 정해질 때까지 선언을 최대한 미루라는 뜻도 됩니다.
다음 글을 참고하십시오.
Should I declare locals in the middle of a function or at the top?
저는 처음에 몰아서 선언을 하는 것이 더 불편하던데요. (코딩할 때, 코드를 읽을 때
모두.) 그리고 C에서도 중간에 변수를 선언할 수 있습니다.
저는 흠 변수가 주석이 필요한 경우, 나중에 봤을때 헤깔릴 수 있는것은
저는 흠 변수가 주석이 필요한 경우, 나중에 봤을때 헤깔릴 수 있는것은 함수의 시작에서 잘 정의된 규칙으로 선언을 하고 그렇지 않은경우는 코드 중간중간에 간단하게 씁니다.
그리고 RAII idiom, boost::(shared_ptr, scoped_ptr) 가능하면 애용합니다
Life rushes on, we are distracted
음 저도 임시적은 거는 코드 중간에서 생성합니다.다만 클래스 전역에서
음 저도 임시적은 거는 코드 중간에서 생성합니다.
다만 클래스 전역에서 사용하는거나 아니면 나름대로 의미가 있다고 생각하는 객체나 변수는 맨처음 클래스 선두에서 생성시킵니다.
인생이란게 다 그런게 아니겠어요....? 뭘(?)
http://schutepen.egloos.com
코드 중간에 선언하는 데에 한 표 날립니다.. 위에 분 말씀대로 effe
코드 중간에 선언하는 데에 한 표 날립니다.. 위에 분 말씀대로 effective c++에서도 나왔던 내용으로 기억합니다. 아얘 한 챕터가 할당되었던 거 같은데.. '변수 선언은 최대한 늦춰라' 이런 식으로요.
변수를 중간에 선언하면 최대한 늦게 메모리를 잡음으로써 코드가 그 지점에 미치지 않는 경우 할당이 이뤄지지 않게 하는 등 효율 향상을 기대할 수도 있습니다. 가독성 면에서도 더 좋다고 생각합니다.
Re: 자바 혹은 c++에서 변수나 객체 선언은 주로 어디서 하나요?
C99에서는 중간에도 정의할 수 있습니다.
- 죠커's blog / HanIRC:#CN
댓글 달기