[book] Страуструп, Язык программирования C++, 3 издание
B. Straustrup - The C++ Programming Language 3ed eng
однако если у кого-то вдруг есть русский вариант, то он предпочтительнее
перед сном перевоткну провода и скачаю
А вот если бы еще на форум выложить, или куда-нибудь в аплод...
![](/images/graemlins/smirk.gif)
напоминает
"Руководство по эксплуатации парашюта. Издание 2-е, исправленное"
![](/images/graemlins/grin.gif)
Расскажи, что смешного, а то я чувствую себя ущербным от того, что мне несмешно.
Расскажи, что смешного, а то я чувствую себя ущербным от того, что мне несмешно.много людей прогало и разбивалось, потому руководство пользования парашютом исправленное.
![](/images/graemlins/confused.gif)
3-е издание?то есть язык должен быть неизменямым?
напоминает
"Руководство по эксплуатации парашюта. Издание 2-е, исправленное"
таких языков не бывает из широко используемых. Все развивается
![](/images/graemlins/smile.gif)
кстати по поводу развития... обнаружил тут книгу Страуструп Б. — Дизайн и эволюция C++ за 2006 год, есть тема почитать
![](/images/graemlins/smile.gif)
![](/images/graemlins/smile.gif)
Publisher: Addison-Wesley Professional; 1st edition (March 29, 1994)
http://www.amazon.com/Design-Evolution-C++-Bjarne-Stroustrup...
у нас было два варианта - хорошее и неправильное. мы выбрали неправильное, потому что так можно было сохранить совместимость с вариантом C от кернигана и ричи.
читать кстати ее грустно, потому что фактически почти все сводится к утверждению:+1
у нас было два варианта - хорошее и неправильное. мы выбрали неправильное, потому что так можно было сохранить совместимость с вариантом C от кернигана и ричи.
Типа K&R во всём виноваты?
например, таких
procedure2
{
int procedure;
return procedure;
}
procedure {return 1;}
т.е. говорится, что так писать нельзя, что это hack, но при этом этот hack постоянно тащится из стандарта в стандарт. Соответственно при введении новых фич - все эти хаки учитывались, что и приводило к необходимости выбора неправильных решений, в угоду поддержке этих хаков.
за все время развития C++, ни разу так и не было сделано попытки почистить синтаксис и семантику языка, что привело во-первых к большим затратам на обучение, во-вторых - привело к огромной дороговизне парсеров и компилятор языка C++.
K&R придумали язык для написания ОС. И это был действительно прекрасный язык для написания ОС.
Виноваты те, кто начали применять этот язык для решениях других задач или даже воспринимать его как некий универсальный язык.
что привело во-первых к большим затратам на обучениеПочему? Кто-то учится "хаковским" возможностям C++?
в основном учатся эти хаковские возможности выявлять и обходить.
например, выяснять почему не компилится следующий код, и что надо сделать чтобы компилился
std::vector<std::vector<int>> matrix; //парсер путает с operator-ом >>
CLock lock(v); // ряд компиляторов путает с объявлением функции, причем здесь херня в том,
//что код даже скомпилится, только выдавать будет совсем не то, что хотелось.
std::vector<std::vector<int>> matrix; //парсер путает с operator-ом >>Не по теме, но вот за что я не люблю C++ - так это за использование операторов << и >> для ввода/вывода. Уродство.
CLock lock(v); // ряд компиляторов путает с объявлением функции, причем здесь херня в том,Такое только с пустыми скобочками имеет место. Если есть аргументы - не верю.
//что код даже скомпилится, только выдавать будет совсем не то, что хотелось.
Не по теме, но вот за что я не люблю C++ - так это за использование операторов << и >> для ввода/вывода. Уродство.1. Это не совсем C++, это STL.
2. Оператор ">>" есть и в C.
Не по теме, но вот за что я не люблю C++ - так это за использование операторов << и >> для ввода/вывода. Уродство.1. STL - это неотъемлимая часть C++, также как toString у каждого класса для Java, и, кстати, ничуть не хуже, чем toString.
1. Это не совсем C++, это STL.
2. Оператор ">>" есть и в C.
2. Вместо того, чтобы не любить, просто разберитесь как это работает.
1. STL - это неотъемлимая часть C++, также как toString у каждого класса для Java, и, кстати, ничуть не хуже, чем toString.То, что STL входит в стандарт, я знаю. Поэтому я написал "не совсем".
2. Вместо того, чтобы не любить, просто разберитесь как это работает.Не понял вообще к чему это и причём здесь я?
![](/images/graemlins/smile.gif)
2. Ни к чему. Так же, как и у 2 тебя
![](/images/graemlins/smile.gif)
> Не по теме, но вот за что я не люблю C++ - так это за использование операторов << и >> для ввода/вывода. Уродство.Это не совсем STL, переопределение операторов << >> для ввода/вывода появилось ещё задолго до STL, и шаблонов (Templates) не требует. Собственно, мне они не нравятся за свою "корявость", в той же Яве это реализовано куда нагляднее. Но это IMHO, конечно. Просто, на мой взгляд, это был крайне неудачный шаг со стороны разработчиков, использовать такие операторы для ввода-вывода.
1. Это не совсем C++, это STL.
2. Оператор ">>" есть и в C.
может быть, писал по памяти.
проблема как раз в том, что такой фигни очень много и всю ее быстро не выучишь, и в памяти не удержишь.
Оставить комментарий
Russula
у кого есть в электронном виде? В search.local только второе изданиеЗалейте на z81 плиз