Подтвердить что ты не робот

Переключение с С# на С++. Любые обязательные чтения?

Я пытаюсь найти путь наименьшего сопротивления от С# до С++, и, хотя я чувствую, что с С# довольно хорошо справляется с С# после двух лет, я все еще не уверен, что получил "паз" на С++, несмотря на многочисленные попытки.

Существуют ли какие-либо конкретные книги или веб-сайты, которые могут быть пригодны для этого перехода?

4b9b3361

Ответ 1

Я рекомендую язык программирования С++ от Bjarne Stroustrup. Это не подходящая книга для новых программистов, но я нашел ее достаточно эффективной, как программист, который был опытным на других языках и не хотел тратить слишком много времени на изучение того, как работают петли. Это плотная, но довольно обширная книга.

Ответ 2

Примерно два года назад я перешел с С# на С++ (после 10 лет написания java). Самой полезной книгой для меня был Брюс Экель, думающий на С++ [AMZN]. Вы также можете прочитать книгу в Интернете веб-сайт Eckel. Это хорошо написанная книга - вид, который вы можете прочитать в постели, - это также полезно в качестве справочника на клавиатуре. Он предполагает значительный уровень комфорта с OO и концепциями общего программирования.

Stroustrup [AMZN] бесценен как ссылка, но в принципе непроницаема, если вы не пытаетесь ответить на очень конкретный вопрос - - и даже тогда это борьба. Через несколько лет я не расколол свой K & R [AMZN]. Я не думаю, что это имеет большое значение как ссылка на С++. Эффективный С++ для Майерса [AMZN] (и, как только вы туда попадете, эффективный STL [AMZN] - фантастические книги. Они очень специфичны, хотя (например, "36. Классы конструкторских функций для передачи по значению" ) и, следовательно, не так полезны, как Eckel для перехода.

Мой опыт написания С++ после многих лет написания управляемых языков был замечательным. С++ в сотни раз более выразителен, чем С#, и чрезвычайно удобен для записи - там, где это оправдано. С другой стороны, в редких случаях, когда я все еще нахожусь писать С#, я всегда удивляюсь, как быстро и лаконично я могу сделать все.

Во всяком случае, Eckel Effective С++ может помочь вам сделать переход. Там второй том, что хорошо, но не так хорошо. Придерживайтесь оригинала.

Удачи!

Ответ 3

Я предлагаю вам прочитать Язык программирования на С++ (написан Бьярне Страуступом). Возможно, это не самая лучшая книга, но, безусловно, вы должны прочитать, рано или поздно.

Ответ 4

Все, что написано Meyers, рекомендуется тот же, или написано Sutter.

Ответ 5

Ускоренный С++ by Koenig ( Изменить: и Moo.)

Ответ 6

Они в основном очень разные звери, поэтому между ними нет наименьшего сопротивления. Однако я рекомендую вам заранее прочитать http://www.phpcompiler.org/doc/virtualinheritance.html, если вам понадобится нетривиальное наследование. Это может спасти вам несколько головных болей.

Ответ 7

Язык программирования С++ от Bjarne Stroustrup является обязательным для чтения. Эффективный С++ (Scott Meyers) - это еще одна книга, которую я нашел полезной.

И чтобы сбалансировать все это, прочитайте С++ FQA (http://yosefk.com/c++fqa/) - в то время как не книга, это ценный ресурс, и Мне жаль, что у меня не было доступа к нему, когда я начинал работу с С++. Просто не позволяйте этому препятствовать вам.

Ответ 8

Я нашел Lippman и др. "С++ Primer: 4th edition", чтобы быть отличным. Он подчеркивает использование STL, лучшие практики и использование auto_ptr с самого начала. Я перешел с позиции Java на С++-назначение, и это было действительно отлично.

Как чистая ссылка, Josuttis "Стандартная библиотека С++" была STL в лучшем виде (и хуже всего... парень действительно не тянет удары)

Наконец, Meyer Effective С++, как говорили другие, является обязательным для чтения для "gotchas", присущим С++

Ответ 10

Я бы рассмотрел [K & R] (http://en.wikipedia.org/wiki/The_C_Programming_Language_(book)) предварительное условие для С++. Возможно, самое лучшее в С++ - это то, что он лучше C.

И, конечно же, Страуструп (как предложил Младен Янкович) должен прочитать.

Ответ 11

Мои две стандартные книги: "Объектно-ориентированное программирование на С++", третье издание, Роберт Лафор, изданный The Waite Group, и "С++ from the Ground Up" Герберта Шильдта, опубликованного Осборном Макгроу-Хилом.

Ответ 12

Вы должны прочитать одну из других опубликованных книг, но затем также Проект и эволюция С++. Это помогает вам понять, что делает язык.