[book] Страуструп, Язык программирования C++, 3 издание

Russula

у кого есть в электронном виде? В search.local только второе издание
Залейте на z81 плиз

elenafish

B. Straustrup - The C++ Programming Language 3ed eng

Russula

спасибо
однако если у кого-то вдруг есть русский вариант, то он предпочтительнее

Russula

ладно
перед сном перевоткну провода и скачаю

erotic

А вот если бы еще на форум выложить, или куда-нибудь в аплод...

juliuzz

3-е издание?
напоминает
"Руководство по эксплуатации парашюта. Издание 2-е, исправленное"

erotic

Расскажи, что смешного, а то я чувствую себя ущербным от того, что мне несмешно.

Barbie29

Расскажи, что смешного, а то я чувствую себя ущербным от того, что мне несмешно.
много людей прогало и разбивалось, потому руководство пользования парашютом исправленное.

gopnik1994

а как бы его из инета забрать?

Russula

3-е издание?
напоминает
"Руководство по эксплуатации парашюта. Издание 2-е, исправленное"
то есть язык должен быть неизменямым?
таких языков не бывает из широко используемых. Все развивается

disna

так

elenafish

лениво заливать куда-то расшарил все свои книги, страуструп и еще куча всего находится тут:
кстати по поводу развития... обнаружил тут книгу Страуструп Б. — Дизайн и эволюция C++ за 2006 год, есть тема почитать

erotic

Спасибо

Dasar

вообще-то, дизайн и эволюция - довольно старая книга, ей уже 12 лет.
Publisher: Addison-Wesley Professional; 1st edition (March 29, 1994)
http://www.amazon.com/Design-Evolution-C++-Bjarne-Stroustrup...

Dasar

читать кстати ее грустно, потому что фактически почти все сводится к утверждению:
у нас было два варианта - хорошее и неправильное. мы выбрали неправильное, потому что так можно было сохранить совместимость с вариантом C от кернигана и ричи.

Landstreicher

читать кстати ее грустно, потому что фактически почти все сводится к утверждению:
у нас было два варианта - хорошее и неправильное. мы выбрали неправильное, потому что так можно было сохранить совместимость с вариантом C от кернигана и ричи.
+1

Marinavo_0507

Типа K&R во всём виноваты?

Dasar

виноват Страуструп и ко, потому что во время развития стандарта C++ старались сохранить совместимость на уровне самого раннего стандарта C, причем даже на уровне самых стремных возможностей.
например, таких


procedure2
{
int procedure;

return procedure;
}

procedure {return 1;}


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

Landstreicher

> Типа K&R во всём виноваты?
K&R придумали язык для написания ОС. И это был действительно прекрасный язык для написания ОС.
Виноваты те, кто начали применять этот язык для решениях других задач или даже воспринимать его как некий универсальный язык.

erotic

что привело во-первых к большим затратам на обучение
Почему? Кто-то учится "хаковским" возможностям C++?

Dasar

> Кто-то учится "хаковским" возможностям C++?
в основном учатся эти хаковские возможности выявлять и обходить.
например, выяснять почему не компилится следующий код, и что надо сделать чтобы компилился

std::vector<std::vector<int>> matrix; //парсер путает с operator-ом >>


CLock lock(v); // ряд компиляторов путает с объявлением функции, причем здесь херня в том,
//что код даже скомпилится, только выдавать будет совсем не то, что хотелось.

alexkravchuk

std::vector<std::vector<int>> matrix; //парсер путает с operator-ом >>
Не по теме, но вот за что я не люблю C++ - так это за использование операторов << и >> для ввода/вывода. Уродство.

smit1

CLock lock(v); // ряд компиляторов путает с объявлением функции, причем здесь херня в том,
//что код даже скомпилится, только выдавать будет совсем не то, что хотелось.
Такое только с пустыми скобочками имеет место. Если есть аргументы - не верю.

tokuchu

Не по теме, но вот за что я не люблю C++ - так это за использование операторов << и >> для ввода/вывода. Уродство.
1. Это не совсем C++, это STL.
2. Оператор ">>" есть и в C.

enochka1145

Не по теме, но вот за что я не люблю C++ - так это за использование операторов << и >> для ввода/вывода. Уродство.
1. Это не совсем C++, это STL.
2. Оператор ">>" есть и в C.
1. STL - это неотъемлимая часть C++, также как toString у каждого класса для Java, и, кстати, ничуть не хуже, чем toString.
2. Вместо того, чтобы не любить, просто разберитесь как это работает.

tokuchu

1. STL - это неотъемлимая часть C++, также как toString у каждого класса для Java, и, кстати, ничуть не хуже, чем toString.
То, что STL входит в стандарт, я знаю. Поэтому я написал "не совсем".
2. Вместо того, чтобы не любить, просто разберитесь как это работает.
Не понял вообще к чему это и причём здесь я?

enochka1145

1. Эт я понял.
2. Ни к чему. Так же, как и у 2 тебя . Просто есть корреляция между тем, что понимаешь, и тем, что любишь.

alexkravchuk

> Не по теме, но вот за что я не люблю C++ - так это за использование операторов << и >> для ввода/вывода. Уродство.
1. Это не совсем C++, это STL.
2. Оператор ">>" есть и в C.
Это не совсем STL, переопределение операторов << >> для ввода/вывода появилось ещё задолго до STL, и шаблонов (Templates) не требует. Собственно, мне они не нравятся за свою "корявость", в той же Яве это реализовано куда нагляднее. Но это IMHO, конечно. Просто, на мой взгляд, это был крайне неудачный шаг со стороны разработчиков, использовать такие операторы для ввода-вывода.

Dasar

> Такое только с пустыми скобочками имеет место. Если есть аргументы - не верю.
может быть, писал по памяти.
проблема как раз в том, что такой фигни очень много и всю ее быстро не выучишь, и в памяти не удержишь.
Оставить комментарий
Имя или ник:
Комментарий: