C 코드 그대로 확장자 cpp 하고 C++ 컴파일러 줘봐라
(표준 달라져서 오류나 경고 뜨는거 없다하자)
더 빠르다
GCC 프론트엔드나 clang의 중간코드 생선 전 단계의 최적화가 C++이 압도적으로 연구 많이 되고 C는 백포트 되는 형식이라..
물론 이제 C++ 의 많은 라이브러리들을 쓰면 그만큼 느려지겠지
같은 코드 상에서 C가 C++ 보다 빠르다는 개소리는 이제 ㄴㄴ
C 코드 그대로 확장자 cpp 하고 C++ 컴파일러 줘봐라
(표준 달라져서 오류나 경고 뜨는거 없다하자)
더 빠르다
GCC 프론트엔드나 clang의 중간코드 생선 전 단계의 최적화가 C++이 압도적으로 연구 많이 되고 C는 백포트 되는 형식이라..
물론 이제 C++ 의 많은 라이브러리들을 쓰면 그만큼 느려지겠지
같은 코드 상에서 C가 C++ 보다 빠르다는 개소리는 이제 ㄴㄴ
C는 하기 나름이지만 C++은 대강 다 만들어져 있어서 성능이 다 엇비슷하게 나오기 때문에 그런 거 아닐까? 비트필드 수준으로 자료구조 다루는 수준이면 C++이 약간 느리기야 하겠지
네
넹 - dc App
말같지도 않은 소리임 어차피 둘다 중간코드로 번역되고 다시 최적화되는데
어차피 바이너리 되는 코드는 니가 짠 코드랑 전혀다르다
둘이 속도 비교하는건 솔직히 바보같은 일이고 대신에 예전부터 C++이 실행파일 크기가 크다고 지적받아온건 있져
문제는 그 중간트리로 최적화되는 단계가 C++이 훨씬더 많이연구됨
뭐 그건 그렇긴하다. 로더도 조금씩 다를테니 코드가 같아도 조금더 많은 코드가 담기겠지
근데 그것도 같은 코드 기준으로 딱딱 뱉어내면 비슷하거나 더 적을수 있다. 더 적은이유는 글 본문에 적은대로
가상함수 이야기 일걸
C 코드를 그대로 복사했을때 이야기니 가상함수는 아마 로더부분에나 있을걸 그것도 콜비용 과장되어있지만
아 내말은 C로 비트필드 수준으로 다루는 프로그램이랑 C++ STL 컨테이너로 짠 프로그램이랑 특정 상황에서 퍼포먼스 비교해보는 거 말하는 거였음. 특정 상황에서 랜덤 액세스가 많이 일어나는데 C++은 셋 같은 걸로 짜두고 C는 직접 성능 좋은 트리 짜서 성능 비교해본다면야 C쪽이 더 빠르겠지 뭐
그런 특정 상황 제외하고 일반적인 상황에서는 물론 성능 동일하겠지.
STL -> 이미 본문내용에서 벗어남
그딴건 언어의 특성이라기보단 걍 라이브러리가 비대한거지
모든 C++ 사용자가 STL을 도배하진않지. 나도 거의 절차지향처럼 씀 단지 문법이 C++ 이지