수색…
소개
이것은 C ++ 컴파일러에서 C 코드가 깨질 내용을 설명합니다.
예약 키워드
첫 번째 예제는 C ++에서 특별한 목적을 가진 키워드입니다. 다음은 C에서는 유효하지만 C ++에서는 유효하지 않습니다.
int class = 5
이 오류는 수정하기 쉽습니다. 변수의 이름을 바꿉니다.
약한 타입의 포인터
C에서 포인터는 C ++에서 명시 적 형변환이 필요한 void*
로 캐스트 될 수 있습니다. 다음은 C ++에서는 불법이지만 C에서는 유효합니다.
void* ptr;
int* intptr = ptr;
명시 적 캐스트를 추가하면이 작업을 수행 할 수 있지만 추가 문제가 발생할 수 있습니다.
고토 또는 스위치
C ++에서는 goto
또는 switch
초기화를 건너 뛸 수 없습니다. 다음은 C에서는 유효하지만 C ++에서는 유효하지 않습니다.
goto foo;
int skipped = 1;
foo;
이러한 버그는 재 설계가 필요할 수 있습니다.
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow