- 1
- 2
- 3
Integer [] jh = new Integer [1];
Integer j0 = new Integer(17);
jh[0]= j0;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+97
Integer [] jh = new Integer [1];
Integer j0 = new Integer(17);
jh[0]= j0;
Заполняем массив.
bormand 30.01.2013 21:06 # +1
3.14159265 30.01.2013 21:08 # +1
Самое смешное что этот массив потом идёт аргументом в варарг.
И потом эти люди будут рассказывать о многословности жабы.
Полагаю это приятней чем крестократкость #12488.
bormand 30.01.2013 21:21 # +1
defecate-plusplus 30.01.2013 22:02 # +12
иногда мне трудно даже вообразить, что программируют постояльцы уютненького
bormand 30.01.2013 22:07 # +3
absolut 30.01.2013 22:16 # +5
bormand 30.01.2013 22:20 # 0
absolut 31.01.2013 06:03 # 0
3.14159265 31.01.2013 15:47 # +1
>{0, 300, 300, 300}
Больше js напоминает. Да и зачем язык усложнять? Ну сделайте шаблонный варарг метод array, который вернет массив.
vibrator.vibrate(Make::array(0, 300, 300, 300), -1);
И не надо запоминать какие скобки что и зачем делают. И код читабельный.
defecate-plusplus 31.01.2013 16:47 # +1
в которой и 20 лет назад работало int array[] = {1, 2, 3, 4};
просто в с++11 эту схему инициализации наконец-то обобщили и предоставили способ передачи {....} в конструктор/метод/функцию
3.14159265 31.01.2013 22:54 # +3
PS Они через 10 лет проснутся и запилят кортежи в стиле js.
Ну к тому времени всё равно никто не сможет его читать.
defecate-plusplus 31.01.2013 23:44 # +4
в с++ всегда был высокий порог вхождения
илитарный же язык
после школоло-паскаля он вообще казался нагромождением одних значков пунктуации
LispGovno 01.02.2013 01:26 # +1
absolut 01.02.2013 02:11 # +2
3.14159265 01.02.2013 15:15 # 0
Ошибочка, анонимные классы.
Кортежи предлагаю так:
Зачем угловые? Чтоб никто не догадался!
>илитарный же язык
Говноилитарный. Только пхп илитарнее: PHP (3188) C++ (1121). И кстати правильно что на третьем месте шарп. Но с таким серъезным соперником как кресты бороться будет трудно.
guest 01.02.2013 15:38 # +1
guest 01.02.2013 15:39 # +2
3.14159265 01.02.2013 15:42 # 0
defecate-plusplus 01.02.2013 15:44 # 0
просто { .... } - это не array, это initializer_list
guest 01.02.2013 16:48 # +2
http://liveworkspace.org/code/lEir4$7
defecate-plusplus 01.02.2013 16:59 # +1
ISO 14.09.2023 09:13 # 0
TarasB 01.02.2013 17:05 # −1
roman-kashitsyn 01.02.2013 17:11 # +2
3.14159265 01.02.2013 17:39 # +2
bormand 01.02.2013 18:43 # 0
bormand 01.02.2013 19:06 # 0
P.S. Всю эту картину сильно портят финализаторы, поэтому их и не рекомендуют юзать без особой необходимости.
3.14159265 01.02.2013 19:13 # 0
bormand 01.02.2013 19:30 # 0
P.S. Кстати хотспотовский JIT умеет убирать ненужные new и превращать объект тупо в пачку переменных на стеке, если ссылка на объект не утекает за пределы функции?
3.14159265 01.02.2013 19:40 # +4
CLR(.NET) и выделяет на стеке переменные, и замыкания тоже через стек реализованы, и передача в метод объектов и по значениям, и по ссылкам (ref, out), и много других фич, которые теоретически должны повысить скорость.
А общая скорость по бенчам ниже чем у JVM.
roman-kashitsyn 01.02.2013 21:54 # +4
LispGovno 01.02.2013 22:21 # +1
Хештаблица?
bormand 01.02.2013 22:30 # +2
LispGovno 01.02.2013 23:00 # 0
http://msdn.microsoft.com/ru-ru/library/bb359438.aspx
Aлсо dick tionary
bormand 01.02.2013 23:10 # +1
3.14159265 01.02.2013 23:13 # +2
since 3.5
> >спецы мелкософта оптимизируют итераторы, делая их неинтуитивными структурами
Два плюса серу, только за это. Там кстати споры были насчет "оптимизицации"
Ибо шарпообезьянки не привыкли к тому что мутабельная переменная v захватывается и при вызове лямбды там будет финальное значение.
Хотя любой мало-мальски писавший на js по-любому наступал на это (или уже знал).
bormand 01.02.2013 23:32 # 0
bormand 01.02.2013 23:39 # 0
TarasB 02.02.2013 00:02 # 0
bormand 02.02.2013 00:09 # 0
LispGovno 02.02.2013 09:49 # −2
bormand 02.02.2013 10:10 # +1
Пример с багом из-за богомерзкого скопинга жс: http://ideone.com/MgVwAS А интуитивно должно быть как в си - описал переменную внутри блока - значит ее скоп - этот самый блок, а не вся функция. К лямбдам никаких претензий, претензии только к ёбнутым скопам.
bormand 02.02.2013 10:19 # 0
3.14159265 06.02.2013 19:11 # +1
Вот хороший пример, без функций
Угадайте что будет.
И поэтому в кои-то веки внесли хорошее предложение расширить js словом let, что и сделали добрые дяди из мозиллы.
https://developer.mozilla.org/en-US/docs/JavaScript/New_in_JavaScript/1.7?redirectslug=New_in_JavaScript_1.7#section_11
Lure Of Chaos 31.01.2013 00:30 # +2
GK2012 25.08.2021 21:11 # 0