![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
я даже больше скажу
sysfs и реализация kobject/kset в ядре linux - это сплошной полиморфизм на С там все предельно просто и эффективно я вообще-то специально оговорил, что не стОит начинать споры про ООП, т. к ООП != ЯП -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
MAKCim, приведенный код, работает также и на плюсах, однако там так не пишут.
почему если помимо этого способа, есть еще другой, то выбор остановился за вторым ? И вот еще, а то никак не пойму, Вы считаете, что 1. тех средств что в Си достаточно, и можно выкрутиться в любой ситуации 2. тех средств что в Си явно достаточно, и предлагаемые возможности С++ просто излишни.
так вроде пока не затрагивали: в частности полиморфизм свойствен далеко не только ООП. Ну а вобще я думаю подобный спор можно решить, только сравнив изящность двух решений одной небольшой, но показательной задачи.. Осталось только подобрать такую задачку ![]() |
|||
|
||||
MAKCim |
|
||||||||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
да
да
ну как бы "полиморфизм-наследование-инкапсуляция" ![]()
для меня все очевидно я этих задач уже достаточно много решил мою позицию никому не навязываю, но и доказывать никому ничего не буду -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
||||||||
|
|||||||||
Pieris |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 24.4.2009 Где: Питер Репутация: 1 Всего: 1 |
Раньше я конечно просматривал программерские форумы, но пока не поучавствовал сам, не почувствовал, насколько у людей прослеживается тенденция отступать собственно от темы. Вряд-ли это есть хорошо, хотя бы потому, что сторонний человек, придя на интересующую его ветку форума, может просто не увидеть за деревьями леса (читай решения конкретного вопроса за обсуждениями сторонних тем). Не желая поддерживать эту тенденцию, я хочу вкрадце резюмировать информацию по существу вопроса:
Это сообщение отредактировал(а) Pieris - 27.4.2009, 23:55 |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
насколько я понимаю, для обработки статических массивов любой размерности. |
|||
|
||||
math64 |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2505 Регистрация: 12.4.2007 Репутация: 8 Всего: 72 |
Массив выделяется на стеке, он не статический, но нужно чтобы размер стека был достаточен для размещения такого массива.
Добавлено через 3 минуты и 2 секунды это про массив исопльзуемый в функции. массив передаваемый через параметры может быть выделен где угодно - хоть статический, хоть на стеке, хоть с помощью malloc(). |
|||
|
||||
mes |
|
||||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
Статический массив - противопоставление динамическому массиву и о том где выделено для него память не говорится. Выражение
Я растолковал, что можно будет в функцию принимающую массив переменной длины, передать любой многомерный массив. Разница между многомерным статическим и динамическим массивом в Си, то что первый линеен, а второй представлен как многоуровневый массив указателей. (т.е **...) Соответсвенно передать двухмерный динамический массив как массив переменной длины не возможно. Но можно передать одну из его размерностей и рассматривать ее как двухмерный массив. Хотя вполне допускаю, что не совсем точно понял мысль. ![]() |
||||
|
|||||
Dov |
|
|||
![]() аСинизатор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1721 Регистрация: 10.5.2003 Где: Эрец-Исраэль Репутация: 15 Всего: 88 |
mes, массив переменной длины подразумевает то, что его размеры компилятор вычисляет не на этапе компиляции (как у обычных статических массивов, где размеры задаются константами), а во время работы программы. В этом плане, по моему мнению, речь о динамических массивах не идёт, по вышеизложенной причине.
![]() Добавлено @ 12:19 т.е. можно сделать так:
здесь при каждом вызове ф-ции размеры массива могут меняться. Это сообщение отредактировал(а) Dov - 28.4.2009, 12:22 -------------------- Тут вечности запах томительный, И свежие фрукты дешевые, А климат у нас – изумительный, И только соседи – #уевые. Игорь Губерман. |
|||
|
||||
azesmcar |
|
||||||||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 81 Всего: 211 |
![]() Добавлено @ 14:16 ![]() Это шедевр ![]() тема началась с
развернулась дискуссия на 4 страницы..и на последней странице я вижу сообщение
![]() Добавлено через 7 минут и 3 секунды Dov
может вот так имелось ввиду? Это сообщение отредактировал(а) azesmcar - 28.4.2009, 14:17 |
||||||||
|
|||||||||
math64 |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2505 Регистрация: 12.4.2007 Репутация: 8 Всего: 72 |
Имелось ввиду не это
Здесь при каждом вызове (с разными аргументами) генерируется свой код. И кроме тог cols, rows должны быть константами.
|
||||
|
|||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
-------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 81 Всего: 211 |
![]() Выдаст что-то вроде expected constant expression. Добавлено через 11 минут и 47 секунд ![]() даже если этот код где-то и работает - этот код непереносим. |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
||||
|
||||
azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 81 Всего: 211 |
mes
аааа ![]() ну извиняйте..не прочитал все 4 страницы..я думал речь о С++ идет ![]() Развели дискуссию сам черт ногу сломает ![]() |
|||
|
||||
math64 |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2505 Регистрация: 12.4.2007 Репутация: 8 Всего: 72 |
Как ни странно, работает, даже если файл дать расширение .cpp (компилятор gcc, естественно)
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |