2010-07-28 3 views
4

여기 내 상황이 있습니다. 나는 C++ (다소 나쁘지 만)를 가르쳤으며 나중에 대학에서 Java를 사용하는 방법을 배웠습니다. C++로 돌아와서 C++과 Java가 다른 여러 가지 사항, 예를 들어 메모리 관리 및 메모리 누수 방지와 같은 몇 가지 사항에 혼란을 겪고 있습니다.프로그래머를위한 C++ 참고서 Java에서 돌아 가기

C++에서 프로그래밍으로 돌아가는 가장 좋은 모드는 무엇입니까? 초보자 가이드를 다시 읽어야합니까, 아니면 제 상황에 대한 좋은 참고 자료가 있습니까?

모든 도움에 감사드립니다.

+1

가장 큰 차이점은 Java에는 자동 가비지 수집이 있고 C++에는 자동 가비지 수집이 있다는 것입니다.C++의 모든 객체에는 자체 소멸자가 있어야합니다. –

답변

12

을 제대로 배우지 못했다면 (처음부터 "나쁘게 배웠다"), 다시 시작하십시오. Java에 대한 모든 것을 잊어 버리십시오. C++에서 Java 관용구 및 기법을 사용하려고하면 버그 및 메모리 누출과 매우 비효율적 인 코드를위한 방법 일 뿐이 기 때문입니다. 언어 간의 차이는 상당히 큽니다.

그래서 처음부터 C++을 가르치는 좋은 책을 얻으십시오.

+0

+1, C++ 및 Java는 금성 시대의 달의 달과 다릅니다. – greyfade

+0

이 책은 선택할 * what * 텍스트에 대한 실질적인 권장 사항을 제시하지 않습니다. 질문의 핵심, IMO에 도착하지 않습니다 - 그래서 downvote. – jdt141

+0

나는 책 추천을 요구하지 않았고, 전략을 물었다. @jdt. 이 답변은 좋은 전략을 제시하고 좋은 전략 인 이유를 설명하기 때문에 가장 인상적입니다. –

3

이미 C의 기초를 알고 있다면 ++ 그때 스콧 마이어스에 의해 Effective C++를 읽고 추천 할 것입니다. 더 나은 C++ 코드 작성을위한 풍부한 팁과 지침을 제공합니다. 이전 판과 달리, 책의 세 번째 판은 독자가 C 코딩 이외의 배경에서 왔음을 고려하여 개정되었습니다 (Java는 그 중 하나임).

메모리 누수를 피하는 방법을 비롯하여이 책의 3 장에서는 자원 관리에 대해 설명합니다.

+0

나는 Scott의 책을 아주 좋아하지만, 이미 C++에 대해 잘 이해하지 못한다면 아무에게도 추천하지 않을 것이다. 권고안은 일을해야하는 이유를 자세히 설명하는 것에 기초합니다. 거의 모든 설명은 캐주얼 C++ 사용자를 능가합니다. –

4

C++ Primer Plus는 Stephen Prata가 좋습니다. 조금 건조하지만 매우 집중했습니다.

는 또한 니콜라이 M. Josuttis에

1

이 내가 사용했던 최고 중 하나입니다으로는 C++ 표준 라이브러리를 고려할 수 있습니다. 그것이 C가 아닌 방법, 또는 "클래스가있는 C"를 설명합니다.

Effective C++

3

나는 당신이 처음부터 다시 시작하는 것이 좋습니다. 이미 좋은 책을 들고있는 답변이 많이 있습니다. 나 자신이 C++ Primer을 좋아했지만 그 중 하나를 따르십시오.

그리고 C++ 프로그래밍으로 돌아 의 최선의 형태가 될 것입니다 무엇 귀하의 질문에

에 대한

?

IMO 단 하나의 모드가 있습니다. 그것은 연습, 연습, 연습입니다.