C++0x에 포함될 TR1은 C99의 표준 라이브러리 전체를 포함합니다만,
문법상 (int *a = ① malloc(n * sizeof(int));
같은 문장에서 ①의 위치에 (int *)가 와야만 한다던지) C++은 좀 차이가 나지요.
system-dependent한 경우, 거의 그대로 적용할 수 있지 않을까 싶습니다.
--
임수서룬뫼 윤희수 {cppig1995/돼지군}
Real programmers /* don't */ comment their code.
If it was hard to write, it should be /* hard to */ read.
C++0x에 포함될 TR1은
C++0x에 포함될 TR1은 C99의 표준 라이브러리 전체를 포함합니다만,
문법상 (int *a = ① malloc(n * sizeof(int));
같은 문장에서 ①의 위치에 (int *)가 와야만 한다던지) C++은 좀 차이가 나지요.
system-dependent한 경우, 거의 그대로 적용할 수 있지 않을까 싶습니다.
--
임수서룬뫼 윤희수 {cppig1995/돼지군}
Real programmers /* don't */ comment their code.
If it was hard to write, it should be /* hard to */ read.
100%라고 할
100%라고 할 수는 없습니다. C99 이후 많은게 달라졌지요.
C99 표준의 동적 array 라던가 하는 부분이 문제가 될 수 있습니다.
그 밖에 전통적인 문제인
function call 의 방식이라던가, lib 작성시 function 이름의 mangling 문제라던가,
깊게 따지고 들면 호환이 안되는 부분이 상당수 존재하게 됩니다.
따라서 대부분의 C++ 컴파일러는 extern "C" { ~~~ } 라는 것을 이용하여 C 표준에 맞는
행동을 어느정도 취할 수 있는 여지를 가지고 있습니다.
이를 이용하면 system 에 특화된 문제가 아니고선 어지간한 충돌은 다 해결할 수 있습니다.
Neogeo - Future is Now.
Neogeo - Future is Now.
C는 C++의
C는 C++의 부분집합(subset)이 아닙니다.
댓글 달기