A>++ тут, кстати, не причем. Речь о *p [], в каком языке [] означает другое, нежели обращение по индексу? Чего не >скажешь о *p.
в фортране нет [] а есть (). а Фортран это прадедушка всех языков
A>Ты кстати так и не привел ни одного достоинства такой записи? Применительно к случаю разумеется.
меньше процессорных команд генерится. см пример с реверсом строки
Здравствуйте, Awaken, Вы писали:
A>а демонстрировать то что умеешь — надо. например если требования к позиции A>предполагают знание STL то можно написать и такое:
A>
A>for(it= iter->vec.begin(); it != iter->vec.end(); it ++)
A>
Здравствуйте, e-buch, Вы писали:
ММ>>И что, они знают все обо всем офисе?
adb>>Достаточно чтобы править баги за приемлемое время.
EB>Думаю с этим у них большие проблемы. Один пример : MS Equation, как были глюки (те же что и ~5 лет назад), так и остались.
А вот MS Equation к Офису не надо примешивать, єто продукт сторонней фирмы , о чём вас предупреждают при первом запуске.
Здравствуйте, Кодт, Вы писали:
К>Здравствуйте, Awaken, Вы писали:
A>"когда я вижу название переменной типа iCurrentPageLoopCounter я понимаю — немного кода в жизни этот человек написал"(с)Джоэл Шумахер
К>Когда я вижу название интерфейса IFirst или класса CMain, я понимаю — не большие проекты этот человек собирал. (с) мое.
К>Так что всякое бывает, и в левую мышцу не попадают. К>(А это уже — (с) Земфира).
Да ладно понты колотить, нормальные названия
Если в пределах проекта всем участникам понятно что они значат значит все ок
Как говорится жизнь вынудила. А цикл где у меня такие фичи седят, я вообще лучше показывать не буду. А если обозначать буквой i, то не то что потом не вспомнишь, а на середине строки забудешь...
А вот такое уже надо разбивать, ИМХО, на несколько переменных (имеющих осмысленное имя) и использовать их уже в выражении. Или хотя бы дайте пояснение почему это в данном контексте невозможно?
Здравствуйте, cMex, Вы писали:
M>А вот такое уже надо разбивать, ИМХО, на несколько переменных (имеющих осмысленное имя) и использовать их уже в выражении. Или хотя бы дайте пояснение почему это в данном контексте невозможно?
Можно, но сложно, и смысла нет. Там всё имеет смысл, и эти+другие переменные используются в разных комбинациях. Да и разбивать штук 100 таких строк? Значит кучу места в памяти занять надо и.т.д.
А для меня эта строка, как откритыя книга. Всё просто и понятно.
А главное работает
FB>Как говорится жизнь вынудила. А цикл где у меня такие фичи седят, я вообще лучше показывать не буду. А если обозначать буквой i, то не то что потом не вспомнишь, а на середине строки забудешь...
Если класс переменной hData твой, то лучше сделать осмысленные аксессоры (или функции) в классе и пользоваться. Потому как вне класса работа с переменными не есть хорошее решение. А если класс не твой, то вполне можно сделать обертку на этот класс.
Но привычки, конечно, менять трудно. Проще на жизнь жалиться.
PS
hData->Distance*3*hData->CharWidth во втором слагаемом — это не ошибка ли случайно?
FB>Как говорится жизнь вынудила. А цикл где у меня такие фичи седят, я вообще лучше показывать не буду. А если обозначать буквой i, то не то что потом не вспомнишь, а на середине строки забудешь...
Нда уж. Обфускатор... А так не лучше:
Здравствуйте, Awaken, Вы писали:
A>все настоящие программисты знают что переменную цикла принято обзывать одной буквой i. A>"сосунки"(с) же могут написать вот такое
Ты жутко крутой програмист, я тебе скажу....
A>
A> For intIndex = 1 To intCount
A> strChar = Mid$(strNumber, intIndex, 1)
A> ' skipped
A> Next
A>
Нормальный код. Я всегда (даже сугубо локальные переменные) обзываю начиная с типа данных и для примитивов и для классов. Правда я использую для этого одну букву для примитивов.
For iIndex = 1 To iCount
sChar = Mid$(sNumber, iIndex, 1)
' skipped NextiIndex
Главное что смысл прозрачен, а остальное пох**..
Правда облом в васике что iIndex видна во всей финкции, а не только в For->Next scope, но это можно пережить, а вот Java notation (лобированый некоторыми участниками) я ненавижу — когда например iCount выглядит чтонить типа такого countItems — уродство сплошное — и на слух голимо воспринимаестя, и тип данных в обьявленни смотреть придется
И вообще, можете обзывать меня ламером, но я не люблю С-type языки за case sensitivity, хотя на той же Жабе пишу с удовольствием.
Здравствуйте, Awaken, Вы писали:
P>>Ван Кампмен — физик и крупнейший ученый в области статистической физики и теории неравновесных
A>так это ж физик а не программер. у них стиль мышления другой
Стиль мышления — точно такой же. Говорю, как бывший теорфизик
Опыт — это такая вещь, которая появляется сразу после того, как была нужна...
Вот вы про ужасный стиль и приводите примеры. Я однажды такое видял! Код значит на Delphi был писан, вот кусок из него:
for x:=1 to zeml[point_x,point_z].kol_points do
for z:=1 to zeml[point_x,point_z].kol_points do begin
if prin(point_n,des2)=true then begin des:=des2;goto l1;end;
if prin(point_n,des2+1)=true then begin des:=des2+1;goto l1;end;
if prin(point_n,des2+2)=true then begin des:=des2+2;goto l1;end;
if prin(point_n,des2+3)=true then begin des:=des2+3;goto l1;end;
des2:=des2+4;goto l2;
l1: if (x_pb=x_pe)and(z_pb=z_pe) then begin
edit5.Text:=floattostr(zeml[point_x,point_z].mas_point[des].Y);
zeml[point_x,point_z].mas_point[des].Y:=y_point.Position-5000;
end else begin
p:=y_point.Position-5000;
zeml[point_x,point_z].mas_point[des].Y:=zeml[point_x,point_z].mas_point[des].Y+p;
end;
Никаких отступов, все непонятно как писалось. Помесь транслита с английским. Ну и потом то код пишется маленькими буквами...то большими...короче когда как рука на Shift( или на CapsLock ) упадет Вот тут то и есть ужастный код
Best regards, p_kolya. WinAmp сообщает: Тишина — лучшая музыка
var
Count0:integer;
Count1:integer;
....
Count100:integer;
....
Count0:= 0;
Count1:= 0;
...
Count100:= 0;
...
while ...
read(F,N);
if N=0 then Count0:= Count0+1;
if N=1 then Count1:= Count1+1;
...
if N=100 then Count100:= Count100+1;
Здравствуйте, adb, Вы писали:
adb>P.S. Ярких пример проект MS Office, все участники которого ответствены за весь код сразу (миллионы строк). Причем там не отделяют Word от Excel или Access. Это всё один проект и каждый должен во всем разбиратся.
Ты где таких сказок наслушался
До 7-й версии Word, Excel 5 и Access 2.0 писались АБСОЛЮТНО РАЗНЫМИ группами. У каждого продукта — свой набор классов, своя архитектура. Можешь оценить число повторов кода в исходниках. Это уже потом, намного позже БГ или какого-то менеджера осенило: "Мля, дык это же одно и то же!". И поехали приделывать сиськи Памелы Андерсон к заднице Дженифер Лопес.... И до сих эти группы в основном через манагеров и взаимодействуют.
Кстати, сама же МС в своей "базе знаний" постоянно плачет о том, что Офис изначально не был задуман как единый продукт, что в дальнейшем привело к большому количеству проблем.
Хотя конечно с каждой версией все плотнее идет подгонка, на сегодня это уже можно считать одним пакетом.
Но на роль примера чего-то идеального ни Офис, ни какой-то из его компонентов — не подходят. Ни сами продукты, ни их исходники, ни разработчики.
Скорее, это пример "из жизни" — каким кривым путем идет эволюция.
...А отсюда наливаем, когда рецепт написан совсем неразборчиво...
Здравствуйте, Кодт, Вы писали:
К>Здравствуйте, Awaken, Вы писали:
A>>"когда я вижу название переменной типа iCurrentPageLoopCounter я понимаю — немного кода в жизни этот человек написал"(с)Джоэл Шумахер
К>Когда я вижу название интерфейса IFirst или класса CMain, я понимаю — не большие проекты этот человек собирал. (с) мое.
Когда я вижу, как серьезные люди обсуждают столь серьезный вопрос, я понимаю, как много у них свободного времени.