|
우선 답변 감사합니다.
일단 두번째 문제는 이제부터라도 scope 관련해서 두곳에서 모두 제대로 컴파일되도록 신경쓰면서 짜고 있습니다. (표준을 지키지 않는 vc++때문에 이게 뭔지... ㅜ_ㅜ)
첫번째 문제는 앞으로 문제가 생길것을 대비해서 그런 방법을 쓰도록 해야겠네요. 팁 감사합니다.
근데 문제는 FILE 같이 제가 직접 지정하지 않는 것과 마주칠때가 문제가 되네요. ㅜ_ㅜ
가급적 전체 헤더파일을 모두 인클루드 안하고 필요한것만 따올려고 노력중이거든요.
역시 다른 방법은 없는걸까요.....;;
유영인 Cuperido 님이 쓰신 글 :
: 두번째 문제는 옵션이 있는지 없는지 잘 모르겠습니다. 편리성을 위한다 하더라도,
: Scope 밖에서 해당 변수를 사용하는 것은 위험한 일인것 같습니다. :(
:
: 첫번째 문제는 제가 잘 이해하고 있는것이 맞다면, 아래와 같이 처리할 수 있지 않을까 싶습니다.
:
: #ifndef TYPEDEF_TEST_DEFNIED
: typedef int Test;
: #define TYPEDEF_TEST_DEFNIED
: #endif
:
:
: cuperido
:
: ilys4 님이 쓰신 글 :
: : vc++ 기준으로 짠 코드를 bc++에서 사용하려고 합니다.
: : 문제는, 두 프로그램이 서로 일부 같은 소스를 사용해야한다는 것입니다.
: : 일부러 스탠다드를 알아보기도 하고 그랬는데, 두가지가 걸립니다.
: :
: : 하나는 tyepedef 의 중복선언입니다. vc++에서는 중복선언이 가능하고, 빌더에서는 불가능합니다. 동시에 해결할 수 있는 방법이 없나요? define 문이라면 #ifndef 로 가능할텐데, typedef은 이런게 없는건지.....;; 이거 참 난해하네요.
: :
: : 두번째는 for문입니다. for의 초기화구문에서 생성된 변수의 scope가 다른데요.
: : for( int i 라고 하면 vc++ 에서는 for 문 밖에서 생성된것과 같고, bc++ 에서는 for문 전체의 for안에서만 scope를 갖는데요. 표준은 bc++쪽이 옳은 걸로 알고 있습니다. 하지만 이거 bc++ 의 옵션을 변경하던지 해서 scope를 변경할순 없는 것인가요? 옵션에서 지정이 가능하다면 vc++ 쪽에 맞춰서 작업하고 싶거든요.
: :
: : 같이 쓰기 참 힘들듯 하네요. 아시는 분 답변 부탁드립니다. 두번째는 어쨌거나 해결가능하긴 한데, 첫번째는 간단히 해결안될까봐 걱정이 되네요.
|