|
상관은 없습니다.
헤더화일의 역활은 어디까지나 형식만 알려주는 기능입니다.
그래서
헤더화일에서
int sum(int,int,int);
구현부에서
int sum(int a, int b, int c)
{
~~~~
}
이런식으로 사용하셔도 문제가 없습니다.
다만 위와같이 사용했을때에는 코드인사이트 기능에는 약간
혼란이 생길 수도 있습니다. 코드인사이트가 실시간으로 헤더화일을
분석해서 보여주는데 위와같이 작성한다면
int sum(int,int,int) 라고만 나오니 어디다 무엇을 넣어야 하는지
헷갈릴 수 있겠죠.. 뭐.. 이런저런 이유로 해서
역시 변수명은 잘 정해서 헤더/구현에 똑같이 넣어주는게 제일 좋을듯 싶네요 ^^;
ps. 코드인사이트 기능에 대해서는 실시간 컴파일을 한다고 들어서 확실하진 않습니다. ^^;
강태민 님이 쓰신 글 :
: 예를 들어 헤더 파일에 다음과 같은 함수를 정의 했습니다.
:
: void run(int a, int b, int c);
:
: 그리고 cpp에서
:
: void TForm1::run(int c, int b, int a) <= 파라미터 변수이름을 썩어 놨습니다.
: {
: ....
: }
: 이렇게 해도 컴파일이 되고 실행이 되더군요.
:
: 그리고 함수에 다음처럼 값을 넘겨 봤습니다.
: run(1,2,3);
:
: cpp에 넘어온 값을 보니.
:
: c= 1;
: b=2;
: a=3;
: 헤더에서 정의된 변수 명과 상관없이 cpp에 있는 그대로 1,2,3 이 들어와있더군요..
:
: 혹시해서 int 하고 같은 의미인 BOOL 로 헤더파일의 내용을
: 바꾸어 봤습니다.
: void run(int a, BOOL b, int c);
:
: 이상없이 잘되네요..
:
: 별다른 문제는 안생기는거 같아 보이는데 혹시 이렇게 헤더와 cpp에 함수 파라미터 이름을 서로 틀리게해서
: 프로그램을 짤때 생길수 있는 문제가 뭐가 있을까요..
:
: 지금 프로그램짜다가 정상동작을 하는데 똑같은 파일을 규모가 작은 테스트 프로그램에서 돌릴땐 모두 정상
: 동작하고 규모가 큰 진행중인 프로젝트에 넣고 돌릴땐 어떤 특정 작업에서 약간의 이상한 동작을 합니다.
: 아무리 뒤져봐도 별로 문제생길게 없어 보이고 이것저것 넘기는 값도 정상적인데 계속 보다보니
: 저런 실수가 하나 있었는데..쩝..이게 그런거랑 관련이 있을까 싶어서 문의해 봅니다.
|