TycoooN #1481 25 мая 2013 (изменено) А для чего в нормальном языке нужно сразу вызывать созданные анонимные функции? А вообще это может выглядеть примерно как ->{ puts 1 }.call Изменено 25 мая 2013 пользователем TycoooN Поделиться сообщением Ссылка на сообщение
Обязательное_поле #1482 25 мая 2013 А для чего в нормальном языке нужно сразу вызывать созданные анонимные функции? А вообще это может выглядеть примерно как ->{ puts 1 }.call class CreateProducts < ActiveRecord::Migration def change suppress_messages do create_table :products do |t| t.string :name t.text :description t.timestamps end end say "Created a table" suppress_messages {add_index :products, :name} say "and an index!", true say_with_time 'Waiting for a while' do sleep 10 250 end end end Поделиться сообщением Ссылка на сообщение
Гость 2poy_nyasha #1483 25 мая 2013 (изменено) например для инкапсуляции var gay = (function(){ var gays = ['viza', 'tyson', 'kazik', 'rubish']; return gays[Math.random()*gays.length|0] }()); Изменено 25 мая 2013 пользователем 2poy_nyasha Поделиться сообщением Ссылка на сообщение
DIMAN123456789 #1484 25 мая 2013 (изменено) А для чего в нормальном языке нужно сразу вызывать созданные анонимные функции? А вообще это может выглядеть примерно как ->{ puts 1 }.callкомпораторы, кликхэндлеры, лисенеры, визиторы, и тд и тп Хотя формально это конечно же классы, по крайней мере в java, Но чаще всего в них ровно 1 перегружаемый метод. Изменено 25 мая 2013 пользователем DIMAN123456789 Поделиться сообщением Ссылка на сообщение
Обязательное_поле #1485 25 мая 2013 А для чего в нормальном языке нужно сразу вызывать созданные анонимные функции? А вообще это может выглядеть примерно как ->{ puts 1 }.callкомпораторы, кликхэндлеры, лисенеры, визиторы, и тд и тп Хотя формально это конечно же классы, по крайней мере в java, Но чаще всего в них ровно 1 перегружаемый метод.CreateProducts тоже класс, но с виду не скажешь :( Поделиться сообщением Ссылка на сообщение
TycoooN #1486 25 мая 2013 А для чего в нормальном языке нужно сразу вызывать созданные анонимные функции? А вообще это может выглядеть примерно как ->{ puts 1 }.call class CreateProducts < ActiveRecord::Migration def change suppress_messages do create_table :products do |t| t.string :name t.text :description t.timestamps end end say "Created a table" suppress_messages {add_index :products, :name} say "and an index!", true say_with_time 'Waiting for a while' do sleep 10 250 end end end Это к чему? А для чего в нормальном языке нужно сразу вызывать созданные анонимные функции? А вообще это может выглядеть примерно как ->{ puts 1 }.callкомпораторы, кликхэндлеры, лисенеры, визиторы, и тд и тп Хотя формально это конечно же классы, по крайней мере в java, Но чаще всего в них ровно 1 перегружаемый метод. И че они сразу вызываются после объявления? Поделиться сообщением Ссылка на сообщение
Обязательное_поле #1487 25 мая 2013 К тому что твой раби на рельсах говно.Можешь считать это началом холивара.Давай, принимай удар. Оправдай этот костыль с официального сайта Ruby On Rails. Поделиться сообщением Ссылка на сообщение
Обязательное_поле #1489 25 мая 2013 Создавать класс с названием CreateProducts. Не нарушение ли это семантики языка? Поделиться сообщением Ссылка на сообщение
TycoooN #1490 25 мая 2013 например для инкапсуляции var gay = (function(){ var gays = ['viza', 'tyson', 'kazik', 'rubish']; return gays[Math.random()*gays.length|0] }()); Во всех нормальных языках и так локальные переменные локальны на уровне блока. Создавать класс с названием CreateProducts. Не нарушение ли это семантики языка?То есть из-за неправильного (сугубо на твой взгляд) названия класса миграций весь фреймворк говно? Ок. Поделиться сообщением Ссылка на сообщение
firelord #1491 25 мая 2013 А че не так с названием миграции? Оо Поделиться сообщением Ссылка на сообщение
TycoooN #1492 25 мая 2013 Ну по идее названия классов должны быть существительными. Прикол в том, что названия классов миграций напрямую в коде вообще никогда не используются, они выполняются бинарником рельс по специальной команде. Поэтому прикапываться к названию их класса это Поделиться сообщением Ссылка на сообщение
firelord #1493 25 мая 2013 Я бы назвал CreateProductsTable. Но это дело вкуса, данный спор ни о чем, и ником образом не показывает хуевость языка / платформы. Всегда забавляли подобные холивары. Поделиться сообщением Ссылка на сообщение
Обязательное_поле #1494 25 мая 2013 А ну другого я от вас не ожидал.Нарушать правила и стандарты — это для вас в порядке вещей. Поделиться сообщением Ссылка на сообщение
firelord #1495 25 мая 2013 ок, можно назвать CreateProductsMigrationслепо следовать стандартам / правилам - не всегда целесообразно (в данном конкретном случае, вообще никакой разницы нет имхо) Поделиться сообщением Ссылка на сообщение
Гость 2poy_nyasha #1496 25 мая 2013 например для инкапсуляции var gay = (function(){ var gays = ['viza', 'tyson', 'kazik', 'rubish']; return gays[Math.random()*gays.length|0] }()); Во всех нормальных языках и так локальные переменные локальны на уровне блока.суть в том, что это будет переменнойнапример gay = 'tyson'а вовсе не функцией Поделиться сообщением Ссылка на сообщение
TycoooN #1497 25 мая 2013 (изменено) Суть в том, что это просто нахуй не надо. Серьезно, кроме жабаскрипта нигде не видел таких извращений. Если нужно что-то вычислить, это выносится в отдельный метод.А если уж очень надо, то в руби можно было бы сделать так: gay = begin gays = %w[2poy TheDeadBrain diman] gays.sample end Просто захуячить блок кода, без гейских вызовов анонимных функций. Изменено 25 мая 2013 пользователем TycoooN Поделиться сообщением Ссылка на сообщение
TheDeadSkin #1498 25 мая 2013 Суть в том, что это просто нахуй не надо. Серьезно, кроме жабаскрипта нигде не видел таких извращений. Если нужно что-то вычислить, это выносится в отдельный метод.А если уж очень надо, то в руби можно было бы сделать так: gay = begin gays = %w[2poy TheDeadBrain diman] gays.sample end Просто захуячить блок кода, без гейских вызовов анонимных функций.тебе пиздец Поделиться сообщением Ссылка на сообщение
Гость 2poy_nyasha #1499 25 мая 2013 нет, оборачивания это очень мощная штука для создания модулей Поделиться сообщением Ссылка на сообщение
F1sher #1500 25 мая 2013 prodota = (test*)malloc(LENGTH_PD*sizeof(test)); for (int i = 0; i < LENGTH_PD; i++) { prodota->x = (int**)malloc(X_ROWS*sizeof(int*)); for (int j = 0; j < X_ROWS; j++) { prodota->x[ j ] = (int*)malloc(X_COLS*sizeof(int)); } } prodota->x = (int**)malloc(X_ROWS*sizeof(int*)); это же не обязательно в цикле?ну, в "этом" ты выделяешь память под каждую строку матрицы. если не менять суть задачи, то обязательно. так то ты можешь сразу выделить линейно память на X_ROWS*X_COLS элементов, а потом расставить указатели на нужные строки, правда, потом реаллок делать чуток напряжнее. на видяхах текстуры именно так и хранятся.хм, почему же тогда память под обычный двумерный массив выделяется так? int **array1 = (int **)malloc(nrows * sizeof(int *)); for(i = 0; i < nrows; i++) array1[i] = (int *)malloc(ncolumns * sizeof(int)); да, я проебался с тем индексом у массива продоты.Ну и в чем твой вопрос не ясно, ведь у меня там точно такое же выделение памяти под двумерный массив в х, только делается это для каждого элемента массива продота.просто уточнил, чтобы все четко было Би май дарлинг http://www.youtube.com/watch?v=LhkUjA3D8ig Поделиться сообщением Ссылка на сообщение