Модераторы: LSD

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Чем лучше объектный C++ , чем С, для простых прог? С++ 
:(
    Опции темы
bsa
Дата 1.10.2008, 08:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: нет
Всего: 196



Цитата(Mayk @ 1.10.2008,  05:51)
Цитата(MAKCim @  1.10.2008,  01:36 Найти цитируемый пост)
программировать объектно можно и на С, причем это будет не менее эффективно

можно. только зачем, если есть с++, java, c#?

Ну как же! Если у тебя сложный проект, а-ля ядро операционной системы, то куда же без этого! Ведь принятно все системные вещи писать исключительно на Си. А без объектного программирования сложный проект практически нереально состряпать, чтобы он еще мог жить и развиваться.
Имхо, каждому свое. Я, лично, считаю, что прикладной софт нужно писать на С++ - сильная экономия времени. А системный (особенно, системные библиотеки) на Си из-за большей стандартизованности.
PM   Вверх
MAKCim
Дата 1.10.2008, 08:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 8
Всего: 207



Цитата(Mayk @  1.10.2008,  05:51 Найти цитируемый пост)
Урра! холивар! 

да, отлично, надо бы перенести  smile 


Цитата(mes @  1.10.2008,  03:26 Найти цитируемый пост)
Ага, только есть один маленький нюанс  :  на С++ грязную работу делает компилятор, а на Си программист
поэтому  такой подход

не вижу грязной работы
все то же самое, что и на С++, только по-другому реализовано, что выглядит для не С программистов неестественно  smile 


Цитата(Mayk @  1.10.2008,  05:51 Найти цитируемый пост)
По сравненю с QT? Ты бы ещё XLib назвал. 

а что, Xlib штуковина мощная  smile 
правда все ручками делать нужно и нет ничего готового


Цитата(Mayk @  1.10.2008,  05:51 Найти цитируемый пост)
Обрати внимание на вторую букву в STL. В си нет шаблонов. И аналогов тоже нет.

они в С не нужны, тут есть void*  smile 
чем это
Код

t_vector *v = vector_create(32, int);
vector_get(v, i) = 50;
vector_destroy(v);

хуже
Код

vector<int> v = vector<int>(32);
v[i] = 50;

единственное, это явная необходимость управления ресурсами
хотя это даже преимущество, а не недостаток  smile 
а все, что касается списков, деревьев, хэшей и т. д (все, что имеет списочную природу)
то в С из-за отсутствия шаблонов применяется концептуально иной подход
не объект списка хранит адреса соседних элементов, а сами элементы
Цитата(Mayk @  1.10.2008,  05:51 Найти цитируемый пост)
RAII. очень полезно 

я уже писал об этом

Цитата(Mayk @  1.10.2008,  05:51 Найти цитируемый пост)
можно. только зачем, если есть с++, java, c#

нет, нет, нет
джаву и шарп мы здесь не трогаем
у них действительно есть возможности, отсутствующие в С/С++
кроме того, оно заточены под определенные задачи сугубо прикладного плана с уклоном в веб
и решают их довольно хорошо

Добавлено @ 08:31
да, кстати, большинство кроссплатформенных либ (причем многие огромные) написаны на С
казалось бы, зачем заниматься геморроей и писАть на С, когда есть С++ 
или С++ непереносим  smile  smile

Добавлено через 7 минут и 43 секунды
Цитата(bsa @  1.10.2008,  08:23 Найти цитируемый пост)
Ведь принятно все системные вещи писать исключительно на Си. А без объектного программирования сложный проект практически нереально состряпать, чтобы он еще мог жить и развиваться.

это верно на 100%  smile

Добавлено через 9 минут и 7 секунд
Цитата(bsa @  1.10.2008,  08:23 Найти цитируемый пост)
Я, лично, считаю, что прикладной софт нужно писать на С++ - сильная экономия времени.

я считаю, что одинаково
главное, чтобы человек был профессионал в своем деле  smile 

Это сообщение отредактировал(а) MAKCim - 1.10.2008, 08:33


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
bsa
Дата 1.10.2008, 08:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: нет
Всего: 196



Цитата(MAKCim @ 1.10.2008,  08:27)
главное, чтобы человек был профессионал в своем деле  smile

 smile 
PM   Вверх
UnrealMan
Дата 1.10.2008, 11:32 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 722
Регистрация: 30.3.2006

Репутация: 0
Всего: 32



Цитата(MAKCim @  30.9.2008,  22:36 Найти цитируемый пост)
С++ объективно сложный

Верно, и некоторым людям в силу собственной лени к изучению новых технологий в программировании психологически проще убедить себя, что старые технологии мол и так работают достаточно эффективно, чем взяться за рассмотрение пугающе большого объёма материала. По этой же причине некоторым, причисляющим себя к программистам C++, не хочется изучать STL или Boost - они до конца жизни готовы изобретать велосипеды, убеждая себя и других в том, что такой подход ничем не хуже, чем использование готовых и проверенных временем средств.

Цитата(MAKCim @  30.9.2008,  22:36 Найти цитируемый пост)
какие у него преимущества перед С?

Собственно такие, из-за которых C++ появился на свет (было бы наивно предполагать, что его придумали исключительно из-за того, что кому-то некуда было растрачивать свою творческую энергию). Проблемы программирования на C перемалывались уже сотни раз, в том числе в D&E.

Цитата(MAKCim @  30.9.2008,  22:36 Найти цитируемый пост)
программировать объектно можно и на С, причем это будет не менее эффективно

В эффективности разработки я сомневаюсь. В эффективности коллективной разработки (где придётся принять кучу изобретённых соглашений) - в особенности.

Цитата(MAKCim @  30.9.2008,  22:36 Найти цитируемый пост)
но в отличие от STL они эффективны на всех платформах, реализация же STL различна для каждого компилятора

А для каждого компилятора разработчики не стремятся реализовать эффективно работающую STL? И STLport уже не является портируемой реализацией STL?

Цитата(MAKCim @  30.9.2008,  22:36 Найти цитируемый пост)
исключения? имхо, они полезны для автоматического управления ресурсами

Надо же, как мало полезного в механизме, который используется далеко не в одном C++ smile 

Цитата(MAKCim @  30.9.2008,  22:36 Найти цитируемый пост)
в С они абсолютно заменяемы через goto,

Да неужели? Один goto позволяет выйти из кучи функций (с освобождением захваченных ресурсов) и попасть в обработчик, о котором функция, выявившая исключительную ситуацию, ничего не знает? 

Цитата(MAKCim @  30.9.2008,  22:36 Найти цитируемый пост)
полиморфизм? реализуется через такие штуки

Угу, за соответствием типов дядя Вася будет следить.

Цитата(Mayk @  1.10.2008,  06:51 Найти цитируемый пост)
В си нет шаблонов. И аналогов тоже нет.

Цитата(MAKCim @  1.10.2008,  09:27 Найти цитируемый пост)
они в С не нужны, тут есть void*

В C++ тоже есть void*. Только почему-то вместо этого используют шаблоны. Странно, правда? Макросами с void* в лучшем случае кое-как можно заменить простые шаблоны (правда, придётся долбаться с их ручным "инстанцированием"). А что ты будешь делать, когда придётся изобразить шаблонный член шаблонного класса? В C++ я могу записать так:

Код
std::list<int> li;
/* ... */
std::vector<double> v(li.begin(), li.end());

Вместо std::list<int> можно взять хоть std::list<unsigned char>, хоть std::deque<short>, при этом инициализация vector будет выглядеть так же просто. Попробуй-ка изобрази такую обобщённость с помощью макросов и void* - пупок развяжется и пузико лопнет.

Цитата(MAKCim @  1.10.2008,  09:27 Найти цитируемый пост)
чем это [...] хуже

В строчке

Код
vector_get(v, i) = 50;

ты забыл указать, с каким типом работаешь.

Цитата(MAKCim @  1.10.2008,  09:27 Найти цитируемый пост)
единственное, это явная необходимость управления ресурсами
хотя это даже преимущество, а не недостаток  

Обалденное преимущество. Искать утечки ресурсов - это ж такая романтика! smile
Только не говори, что гуру C никогда ничего не забывают (в том числе вовремя освобождать ресурсы). Я в такие сказочки не верю. В теории управлять ресурсами ручками, конечно, можно. Но дык в теории можно и программу целиком написать без единой помарки - так, что она сразу без выдачи компилятором ошибок соберётся, вот только часто ли у вас такое бывает на практике?

Цитата(MAKCim @  1.10.2008,  09:27 Найти цитируемый пост)
не объект списка хранит адреса соседних элементов, а сами элементы

Что-то не понял я, где это в C++ объект std::list<> хранит адреса соседних элементов smile 

Это сообщение отредактировал(а) UnrealMan - 1.10.2008, 12:17
PM MAIL   Вверх
J0ker
Дата 1.10.2008, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 986
Регистрация: 17.9.2008

Репутация: нет
Всего: 14



Цитата(UnrealMan @  1.10.2008,  11:32 Найти цитируемый пост)
Но дык в теории можно и программу целиком написать без единой помарки - так, что она сразу без выдачи компилятором ошибок соберётся

Цитата(J0ker @  1.10.2008,  00:00 Найти цитируемый пост)
а еще лучше - сразу в машинных кодах - и компилятор не нужен   smile 

хыхыхы 



--------------------
user posted image
PM MAIL   Вверх
MAKCim
Дата 1.10.2008, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 8
Всего: 207



Цитата(UnrealMan @  1.10.2008,  11:32 Найти цитируемый пост)
Верно, и некоторым людям в силу собственной лени к изучению новых технологий в программировании психологически проще убедить себя, что старые технологии мол и так работают достаточно эффективно, чем взяться за рассмотрение пугающе большого объёма материала. По этой же причине некоторым, причисляющим себя к программистам C++, не хочется изучать STL или Boost - они до конца жизни готовы изобретать велосипеды, убеждая себя и других в том, что такой подход ничем не хуже, чем использование готовых и проверенных временем средств.

ты никак не можешь понять, что под С есть точно такая же куча всевозможных либ, решающих возникающие в процессе разработки сопутствующие вопросы  smile 


Цитата(UnrealMan @  1.10.2008,  11:32 Найти цитируемый пост)
А для каждого компилятора разработчики не стремятся реализовать эффективно работающую STL? 

"стремится" и "получится в итоге" - разные вещи  smile 

 
Цитата(UnrealMan @  1.10.2008,  11:32 Найти цитируемый пост)
Надо же, как мало полезного в механизме, который используется далеко не в одном C++

что поделаешь...


Цитата(UnrealMan @  1.10.2008,  11:32 Найти цитируемый пост)
Да неужели? Один goto позволяет выйти из кучи функций (с освобождением захваченных ресурсов) и попасть в обработчик, о котором функция, выявившая исключительную ситуацию, ничего не знает? 

исключения работают точно так же (по принципу лестницы)
через goto переходим на error_1:, error_2:, ..., error_N:
освобождаем ресурсы, возвращаем в вызыващую функцию код ошибки, она в свою очередь таким же образом использует goto и т. д

 
Цитата(UnrealMan @  1.10.2008,  11:32 Найти цитируемый пост)
Угу, за соответствием типов дядя Вася будет следить.

ну, тот, кто реализовал generic, в курсе типов, а остальному коду о них не нужно знать  smile 


Цитата(UnrealMan @  1.10.2008,  11:32 Найти цитируемый пост)
А что ты будешь делать, когда придётся изобразить шаблонный член шаблонного класса? В C++ я могу записать так:

в С это не нужно  smile 

потом на остальное отвечу


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
J0ker
Дата 1.10.2008, 19:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 986
Регистрация: 17.9.2008

Репутация: нет
Всего: 14



Цитата(MAKCim @  1.10.2008,  18:42 Найти цитируемый пост)
ну, тот, кто реализовал generic, в курсе типов, а остальному коду о них не нужно знать

а программисту? программисту знать нужно?  smile 
Цитата(MAKCim @  1.10.2008,  18:42 Найти цитируемый пост)
в С это не нужно  smile 

вы случайно подмигиваете не насчет макросов в глобальном нэймспэйс? тогда лучше такой смайлик -  smile 



--------------------
user posted image
PM MAIL   Вверх
MAKCim
Дата 1.10.2008, 21:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 8
Всего: 207



Цитата(J0ker @  1.10.2008,  19:37 Найти цитируемый пост)
а программисту? программисту знать нужно?

еще раз повторяю, нужно тому, кто ее реализовал  smile 
все остальные используют таким образом
Код

void run(t_generic *array, size_t count)
{
    while (count--) array[count].callback(array[count].data);
}


Цитата(J0ker @  1.10.2008,  19:37 Найти цитируемый пост)
вы случайно подмигиваете не насчет макросов в глобальном нэймспэйс?

не, у меня глаз дергается просто  smile 


Цитата(UnrealMan @  1.10.2008,  11:32 Найти цитируемый пост)
Попробуй-ка изобрази такую обобщённость с помощью макросов и void* - пупок развяжется и пузико лопнет.

Код

#define vector_in(vector, object, iterator, type) \
    ({ type *p; \
    while (iterator(object, &p)) vector_add(vector, p, type); })

t_list *li = list_create(int);
...
t_vector *v = vector_create(double);
vector_in(v, li, list_for_each, double);



--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
J0ker
Дата 1.10.2008, 21:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 986
Регистрация: 17.9.2008

Репутация: нет
Всего: 14



Цитата(MAKCim @  1.10.2008,  21:18 Найти цитируемый пост)
все остальные используют таким образом
Код

void run(t_generic *array, size_t count)
{
    while (count--) array[count].callback(array[count].data);
}

ага, а array с нетипизированной требухой у нас пушкин заполняет, который волшебным образом нашепчет пользователю вашего чуда, что callback жестоко навернется когда мы ему случайно постороннюю структуру подсунем
или давайте все задефйним нафик как здесь:
Код

#define vector_in(vector, object, iterator, type) \
    ({ type *p; \
    while (iterator(object, &p)) vector_add(vector, p, type); })

а потом набьем морду злобному конкуренту, захотевшему заюзать кровно-наше vector_in
а заодно и пользователю - за измену  smile 

у меня к вам конструктивное предложение - вы в конец дефайнов дописывайте GUID
ну не замечательно ли: vector_in_7F272518_73F9_4fb2_A374_EA310B8EBE7B  smile 

Это сообщение отредактировал(а) J0ker - 1.10.2008, 21:42


--------------------
user posted image
PM MAIL   Вверх
MAKCim
Дата 1.10.2008, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 8
Всего: 207



Цитата(J0ker @  1.10.2008,  21:41 Найти цитируемый пост)
ага, а array с нетипизированной требухой у нас пушкин заполняет, который волшебным образом нашепчет пользователю вашего чуда, что callback жестоко навернется когда мы ему случайно постороннюю структуру подсунем

а в С++ можно изменить private поле если очень захотеть
и что из этого?  smile 

на каждое "а если", можно найти другое "а если"

Добавлено через 5 минут и 49 секунд
как-то дискуссия плавно перешла в то, какими извращениями можно реализовать шаблоны в С
 smile 
зато в С есть массивы переменной длины на стеке
вектора STL курят  smile  smile 


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
vinter
Дата 1.10.2008, 22:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 1
Всего: 56



Цитата(MAKCim @  1.10.2008,  23:05 Найти цитируемый пост)
вектора STL курят

мало того, они еще и пьют и прочему непотребствами занимаются  smile  ухожу ухожу


--------------------
Мой блог
PM MAIL WWW   Вверх
J0ker
Дата 1.10.2008, 22:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 986
Регистрация: 17.9.2008

Репутация: нет
Всего: 14



Цитата(MAKCim @  1.10.2008,  22:05 Найти цитируемый пост)
а в С++ можно изменить private поле если очень захотеть

а давайте остановимся на "без выкрутасов"
без выкруасов всего того что вы там понаписали на C не реализовать - либо плюем на безопасность типов, либо (сильно условно) решаем эту проблему созданием другой проблемы - загрязнением глобального нэймспейса и несовместимостью библиотек, плюс полная неудобочитаемость таких перлов и невозможность их отладки.

Цитата(MAKCim @  1.10.2008,  22:05 Найти цитируемый пост)
зато в С есть массивы переменной длины на стеке

слив защитан   smile  smile 
собственно ничем иным данный спор не мог закончится, т.к. одна из первых предпосылок создания C++ была проблема, в которую я вас так жестоко ткнул носом  smile 


--------------------
user posted image
PM MAIL   Вверх
MAKCim
Дата 1.10.2008, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 8
Всего: 207



Цитата(J0ker @  1.10.2008,  22:52 Найти цитируемый пост)
слив защитан

вы о чем, сударь?  smile 
и коню понятно, что в С нет шаблонов
вопрос состоит в том, а нужны ли они и можно ли обойтись без них
ответ положительный


Цитата(J0ker @  1.10.2008,  22:52 Найти цитируемый пост)
без выкруасов всего того что вы там понаписали на C не реализовать - либо плюем на безопасность типов

я вот не понимаю
у нас есть структура t_generic
ее использование однозначно (t_generic->callback(t_generic->data))
с какого перепуга мы можем в t_generic->callback передать что-то отличное от t_generic->data?


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
J0ker
Дата 1.10.2008, 23:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 986
Регистрация: 17.9.2008

Репутация: нет
Всего: 14



Цитата(MAKCim @  1.10.2008,  23:08 Найти цитируемый пост)
вопрос состоит в том, а нужны ли они и можно ли обойтись без них
ответ положительный

если положительный - это дефайны - то ответ отрицательный в силу вышеназванных причин
если ваше решение имеет хотя-бы какую-то академическую ценность (например как иллюстрация эволюции C в C++), то с точки зрения коммерческого применения эта ценность стремится к нулю, т.к. нигде кроме как монолитных приложениях оно не применимо

Цитата(MAKCim @  1.10.2008,  23:08 Найти цитируемый пост)
я вот не понимаю

ну не надо прибедняться
все вы отлично понимаете  smile 

Цитата(MAKCim @  1.10.2008,  23:08 Найти цитируемый пост)
я вот не понимаю
у нас есть структура t_generic
ее использование однозначно (t_generic->callback(t_generic->data))
с какого перепуга мы можем в t_generic->callback передать что-то отличное от t_generic->data? 

с перепуга void*, который принимает ЛЮБОЙ указатель. А вот что-бы он был не любой - надо либо следить пользователю, либо использовать маловразумительные дефайны (ро дефйны см. выше). Оно нам надо?




--------------------
user posted image
PM MAIL   Вверх
UnrealMan
Дата 2.10.2008, 00:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 722
Регистрация: 30.3.2006

Репутация: 0
Всего: 32



Цитата(MAKCim @  1.10.2008,  19:42 Найти цитируемый пост)
ты никак не можешь понять, что под С есть точно такая же куча всевозможных либ, решающих возникающие в процессе разработки сопутствующие вопросы  

Это ты намекаешь на то, что все эти либы якобы легко заменяют собой все новшества C++ по отношению к C?

Цитата(MAKCim @  1.10.2008,  19:42 Найти цитируемый пост)
исключения работают точно так же (по принципу лестницы)
через goto переходим на error_1:, error_2:, ..., error_N:
освобождаем ресурсы, возвращаем в вызыващую функцию код ошибки, она в свою очередь таким же образом использует goto и т. д

Слишком много возни. Даже без нужды в освобождении ресурсов это геморрой. С освобождением ресурсов это геморрой в квадрате. Соответственно, C тут банально сливает в эффективности разработки, т.к. заставляет программиста тратить лишнее время на реализацию того, что в C++ уже давно автоматизировано.

Цитата(MAKCim @  1.10.2008,  19:42 Найти цитируемый пост)
ну, тот, кто реализовал generic, в курсе типов, а остальному коду о них не нужно знать

Я-то думал, речь идёт о виртуальных функциях, а тут generic smile

Цитата(MAKCim @  1.10.2008,  19:42 Найти цитируемый пост)
в С это не нужно  

Ах вот оно что. Т.е. если мы на C чего-то не можем, то скажем, что не очень-то и хотелось. Ну, для избежания психологического дискомфорта такой самообман, конечно, сгодится, ибо тяжело осознавать, что твой повседневно используемый инструментарий - убогая рухлядь - так можно и интерес к программированию потерять. Но вешать эту лапшу на уши другим, пожалуйста, не надо, C++ программистам и без неё вполне хорошо живётся  smile

Цитата(MAKCim @  1.10.2008,  19:42 Найти цитируемый пост)
#define vector_in(vector, object, iterator, type) \
    ({ type *p; \
    while (iterator(object, &p)) vector_add(vector, p, type); })

t_list *li = list_create(int);
...
t_vector *v = vector_create(double);
vector_in(v, li, list_for_each, double);

Что это за потуги такие? smile Этот обрывок кода, будучи самую малость дополнен, видимо, свершит чудо - заменит шаблоны, приведённые выше по теме? А как насчёт законченного примерчика? Каракули-то мы все рисовать умеем, но только вот мало что можно в них разглядеть. Откуда, к примеру, vector_in узнает точный тип элементов списка? А ежели не узнает, то чего тогда будет присваивать объектам типа double?

Это сообщение отредактировал(а) UnrealMan - 2.10.2008, 00:31
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила ведения Религиозных войн
Smartov
1. Уважайте собеседника
2. Собеседник != враг
3. Старайтесь воздерживаться от тем вида "Windows Rulez" или "Linux Rulez"

С уважением, Smartov.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Религиозные войны | Следующая тема »


 




[ Время генерации скрипта: 0.1256 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.