Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Общие вопросы по программированию, компьютерный форум
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.12.2012, 01:24   #251
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

а давайте флуд не по теме не разводить.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 28.12.2012, 08:08   #252
the_deer_one
Участник клуба
 
Аватар для the_deer_one
 
Регистрация: 04.04.2010
Сообщений: 1,554
По умолчанию

Цитата:
Сообщение от rpy3uH Посмотреть сообщение
да, тип перед именем переменной, это уродство в чистом виде!

var <имя переменной>:<тип> - вполне нормально
А чё не так с этим способом объявления переменной?
Тем более в твоём примере точно так же.
the_deer_one вне форума Ответить с цитированием
Старый 29.12.2012, 13:42   #253
Kostia
Участник клуба
 
Аватар для Kostia
 
Регистрация: 21.11.2007
Сообщений: 1,690
По умолчанию

Цитата:
А чё не так с этим способом объявления переменной?
Порождает холивары типа:
Код:
int *a;
int* a;
Дает возможность писать так:
Код:
int a, *b;
Это если в терминах C/C++. Но лично я считаю что идентификатор типа должен стоят первым, а те вещи что описал выше должны пресекаться, т.е. не должно быть модификаторов типа в явной форме, т.е. вместо int * писать ptr:int a,b,v; или array:int arr; или даже так map:string:int m;
Kostia вне форума Ответить с цитированием
Старый 29.12.2012, 17:22   #254
MihalNik
МегаМодератор
СуперМодератор
 
Регистрация: 27.11.2012
Сообщений: 5,657
По умолчанию

Возможность писать так:
Код:
int a, *b;
не исключает возможности писать так:
Код:
int 
  aaa,
  bbb,
 *ccc;
т.к. разумные имена переменных редко укладываются в 2-3 символа такая запись даже удобнее, а вот для одиночных - лучше бы сначала название переменной.
Два варианта - это больше возможностей. чем какой-то один
Благими намерениями устлана дорога на programmersforum.ru

Последний раз редактировалось MihalNik; 29.12.2012 в 17:24.
MihalNik вне форума Ответить с цитированием
Старый 30.12.2012, 21:56   #255
the_deer_one
Участник клуба
 
Аватар для the_deer_one
 
Регистрация: 04.04.2010
Сообщений: 1,554
По умолчанию

Kostia
А по моему ваще не связано, присобачивать звёздочки можно при любой записи.
a*, b, c : int;
the_deer_one вне форума Ответить с цитированием
Старый 30.12.2012, 22:37   #256
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,331
По умолчанию

при записи var,var,var : *type я думаю очевидно, что все перемнные - указатели, тогда как при type* var,var,var все весьма двусмысленно... type *var,var,var ясней, но поди заставь народ писать так...
waleri вне форума Ответить с цитированием
Старый 30.12.2012, 23:40   #257
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

Цитата:
Сообщение от waleri Посмотреть сообщение
при записи var,var,var : *type я думаю очевидно, что все перемнные - указатели, тогда как при type* var,var,var все весьма двусмысленно... type *var,var,var ясней, но поди заставь народ писать так...
Кто же мешает запретить такой стиль? В D, например, звёздочка ставится у типа и все переменные тогда указатели
Код:
int* a, b, c;
a, b, c - указатели на целое.
netrino вне форума Ответить с цитированием
Старый 31.12.2012, 08:06   #258
Kostia
Участник клуба
 
Аватар для Kostia
 
Регистрация: 21.11.2007
Сообщений: 1,690
По умолчанию

А, вспомнил!
Логичность записи типа перед именем переменной позволяет убрать ключевое слово var(functuin, procedure ...). И позволяет легко определить в любом участке кода, что сейчас будет определение переменных или функций. И что в случае слова var, что без него(тип перед именем переменной) можно легко построить грамматики, но если в первом случае убрать var, то это становится затруднительно.

Цитата:
a*, b, c : int;
Подобную запись сложно уложить в LL или LR.
Да и как трактовать такое:
main*() : int;
Наличие точки с запятой в конце объявления функции, это чистой воды бред:
function myFunc(): Integer;
begin
end;
Но и в тоже время необходимость, а всё из-за того, что изначально синтаксис был до конца не проработан.

Ух, жду помидоров! xD
Kostia вне форума Ответить с цитированием
Старый 31.12.2012, 10:41   #259
the_deer_one
Участник клуба
 
Аватар для the_deer_one
 
Регистрация: 04.04.2010
Сообщений: 1,554
По умолчанию

Kostia
Обойдёшься без помидоров, и так всем очевидно что с++ кривущий до ужаса. ДА и какие помидоры, новый год на дворе, актуальны апельсины.
the_deer_one вне форума Ответить с цитированием
Старый 31.12.2012, 11:21   #260
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,331
По умолчанию

Цитата:
Сообщение от netrino Посмотреть сообщение
Кто же мешает запретить такой стиль? В D, например, звёздочка ставится у типа и все переменные тогда указатели
Код:
int* a, b, c;
a, b, c - указатели на целое.
Увы, C и D - это две большие разницы...
В С/С++ - это int *ptr, var;
waleri вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
можно ли подобный текст перевести на человеческий язык? alexxx777 Помощь студентам 0 24.05.2010 19:56
Как создать вид подобный SolidWorks. KemanSR Общие вопросы C/C++ 6 04.05.2010 21:30
Добавить модуль в phpnuke-подобный движок Able2Know Фриланс 3 23.04.2010 16:29
В Access есть тип данных "Счетчик".Есть ли подобный тип данных в MS Sql Server 2000? An_ton SQL, базы данных 5 16.01.2009 17:55