Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.31;
Скачать: CL | DM;

Вниз

Принципиальные отличия писания программ в C++ Builder и MVS C++   Найти похожие ветки 

 
Ghg ©   (2002-10-10 09:55) [0]

Собственно сабж.

Могу описать поподробнее. Писал на Delphi, теперь хочется попробовать на C++. Так вот на чем писать удобнее, проще, есть ли ограниченияу одного по сравнения с другим?

Если уже обсуждалось дайте ссылку.

С наилучшими ...


 
Dimka Maslov ©   (2002-10-10 10:30) [1]

Смотря что ты собираешся писать. GUI приложения или вспомогательные библиотеки? В первом случае лучше конечно билдер, во втором - мелкомягкие си. Особой разницы между ними нет, но иногда возникают проблемы при компиляции программ, отлаженных в другой среде.


 
NeyroSpace ©   (2002-10-10 10:34) [2]

Есть аналогичное желание.
мелкософт связка MSVC - VB
борланд C++ - Delphi
А еще проги на MSVC используют библиотеку MFC (если не ошиб.).
Она встроена во все Windows и поэтому дает ощущение, что проги на MSVC маленькие.
Если не нужны проблемы с написанием ну очень системных прог, то лучше MSVC.
А если нужно использовать наработки на *.PAS, то BС++ в самый раз.


 
Johnny Smith ©   (2002-10-10 11:43) [3]

Нет в жизни счастья! :)))
Около года назад пришлось мне столкнуться с Сями. До этого я их в глаза, конечно, видел (лет шесть назад баловался, будучи на 4 курсе), но чтобы так!
Короче, нужна была внешняя библиотека для Оракла. Идея была в принципе логичная: написать и отладить ее на ANSI C (кроссплатвормный язык типа!) с помощью MSVC для виндового Оракла, а потом перекомпилить под Солярку на gcc.
Ага. Щаз. Во-первых, некоторых функций, существующих в MSVC, на gcc нет. Причем ни одна б... в MSDNе не указала, принадлежит ли такая-то функция стандарту ANSI C.
Ладно, хрен с ним. Нашел другие функции. Откомпилял. Заработало. Но неправильно. То есть откомпиленная на MSVC работает правильно, а на gcc - нет!
Полтора дня убил, чтобы найти глюк. Так вот, это был безобидный участок кода, доп. проверка условия, которая в принципе была не очень нужна. Закомментарил. Перекомпилял на gcc. Тогда заработало правильно.
Так что... Выбор, что юзать при написании Сишных и С++ных программ - вопрос стратегический. Напишешь на одном - фиг на другом перекомпиляешь.


 
Странник ©   (2002-10-10 11:45) [4]

MSVC - суть есть не полный стандарт С++.
т.е. исходник, который нормально компилируется в GNU (UNIX, Linux), в Borland C++ & other POSIX compliant compilers совсем не обязательно пройдет для мелкомягкого С++ и наоборот.
В общем - очередной выпендреж Мелкософта - мол, а мы и здесь не такие, как все.
А "формочки" клепать в VC - мазохизм.


 
Johnny Smith ©   (2002-10-10 12:35) [5]

2Странник © (10.10.02 11:45)
А "формочки" клепать в VC - мазохизм.
В общем, да.
Если уж писать на VC - то на чиcтых WinAPI. Ведь, как я погляжу, НИ ОДИН серьезный проект, выполненный на VC, не юзает MFC.


 
KSergey ©   (2002-10-10 14:05) [6]

> Johnny Smith © (10.10.02 12:35)

Интересно было бы спросить: а MS Word - это серьеный проект?

> Особой разницы между ними нет, но иногда возникают проблемы
> при компиляции программ, отлаженных в другой среде.

Я правда может не совсем вас понимаю, тут видимо смотря какими средствами пользоваться.
Если использовать просто как компилятор с Си (возможно ++) - то может и да, хотя, конечно, вполне легко наткнуться и на нюансы, как у Johnny Smith. Но это все же "нюансы".
Если использовать только Win API - тогда наверое тоже примерно все равно, оно ни к чему не привязано, понятно: вызывай себе и вызывай интерфейсные ф-ции в нужном порядке (а к стати: собственно в этом программизм ведь и заключается, пожалуй! о! инетерсно, оказывается ничего сложного.. Ну разве что иногда не в том порядке вызываешь - ну дак опять же сам виноват ;).
А вот если говорить о тех библиотеках поддержки, что с ними поставляются - то тут уже ну никакой совместимости в принципе. С VC++ идет MFC, и весь интструментарий предназначен для облегчения его использования, с C++ Builder идет VCL (надеюсь). Т.е. по сути это дельфи, но на Си. Ну в нюансами конечно опять же, но примерно так. Т.е. тут уже ни о какой взаимозаменяемости речь принципиально не идет.


 
Дмитрий Баранов ©   (2002-10-10 14:24) [7]

Насчет GUI-приложений в VC - есть мнение, что у этих засранцев в MS есть своя библиотека a-la Builder, но для внутреннего пользования, и народу они ее не отдают... Ну вот откройте MS SQL Enterprise Manager, или офис поновее - такие контролы на MFC, имхо, затрахаешься писать. Вообще стиль MFC-шных приложений видно за версту - взгляните на ErWin :) Ядро мощное, но интерфейс - корявый-прекорявый.


 
Странник ©   (2002-10-10 14:54) [8]

> KSergey © (10.10.02 14:05)
Повторюсь.
Различия Мелкософтовского С++ и всех остальных (я ведь ни слова не сказал о библиотеках) иногда доходят до абсурда.
Еще 18 лет назад в реализации С от Кернигана-Ричи, равно как и потом в ANSI-C, была возвожность использовать массивы нулевой длины - попробуй в MSVC C++ 6.0 - фигу с маком, только в .net реализовали - и то с оговоркой.
И это только один из многих примеров.


 
qube ©   (2002-10-10 14:59) [9]

Откуда такое единодушие в критике Microsoft, просто поразительно.
Компилятора С++, который бы полностью соответствовал новому стандарту языка, просто нет. Одни не поддерживают аругментов шаблонов по умолчанию, в других счетчик цикла, объявленный внутри for, виден снаружи, и т.д., и т.п.


 
Странник ©   (2002-10-10 15:17) [10]


> соответствовал новому стандарту языка

стандарт C принят так давно, что об этой дате только в летописях.
ANSI-С++ немного позже, но тоже очень давно.


 
qube ©   (2002-10-10 15:23) [11]

Последний действующий стандарт, в к-м ввели namespace"ы и проч., был принят относительно недавно, в 1997-м, кажется. И ни один компилятор полностью требования последнего стандарта не выполняет.


 
Suntechnic ©   (2002-10-10 16:21) [12]

Иногда почитаешь местные форумы и прямо диву даёшься. Тот тут вопрос возникает типа "а какие серьёзные продукты на Делфи написаны?", а то вдруг народ заявлет, что "НИ ОДИН серьезный проект, выполненный на VC, не юзает MFC" :))). Может я чего то пропустил в этом мире? Расскажите тогда мне на чём их всё-таки пишут эти "серьёзные проекты" :).

А вообще техника в руках дикаря это кусок железа, будь то Делфи, Билдер или VC. Я уже неоднократно здесь говорил, что матерятся на VC только те кто его не знает. И "формочки" там "клепать" точно такой же мазохизм, как и где бы то ни было в другом месте. Их просто надо уметь клепать вот и всё.



 
Johnny Smith ©   (2002-10-10 16:56) [13]

2Suntechnic © (10.10.02 16:21)
Ну-ну...
Вы что, объявляете крестовый поход за поруганную честь MFC? Тогда флаг вам в руки, два плюса на спину, перо в... Ну, не хотите туда, тогда в шлем :))))


 
qube ©   (2002-10-10 17:01) [14]

Johnny Smith © (10.10.02 16:56)
Продуманные доводы, ничего не скажешь.


 
Johnny Smith ©   (2002-10-10 17:07) [15]

2qube © (10.10.02 17:01)
Johnny Smith © (10.10.02 16:56)
Продуманные доводы, ничего не скажешь.

Да просто не хочу повторять то, что сказали в этой ветке
Странник © (10.10.02 11:45) и Дмитрий Баранов © (10.10.02 14:24).
Или повторить для товарища с флагом?



 
qube ©   (2002-10-10 17:15) [16]

Johnny Smith © (10.10.02 17:07)
Насчет Странник © (10.10.02 11:45), т.е. соответствия стандарту, я уже сказал выше, и тоже повторять не хочу. У Дмитрия Баранова -- только ничем не подтвержденное "мнение". "Засранцы из MS" -- отличная фраза для юного читателя журнала "Хакер". От мастеров я почему-то ни разу такого не слышал. Насчет серьезных проектов тоже целиком поддерживаю товарища с флагом, как вы изволили выразиться.


 
Johnny Smith ©   (2002-10-10 17:26) [17]

Дорогой qube ©, если Вы объясните мне, тупорылому неучу, какие классы из MFC юзались, скажем, в Photoshop"е, или Corel"е, или Business Objects"е, или Bryce"е (кроме, пожалуй, CWnd, CMenu и других основополагающих), я буду весьма Вам признателен.
Надеюсь, вы не отнесете перечисленные мной проекты к несерьезным.


 
qube ©   (2002-10-10 17:38) [18]

Johnny Smith © (10.10.02 17:26)
Нет, это Вы мне, неопытному, объясните, какие компоненты VCL юзались в Photoshop"e.
Да так вопрос даже ставить нельзя.


 
Johnny Smith ©   (2002-10-10 17:42) [19]

2qube © (10.10.02 17:38)
Вы утверждаете, что Photoshop писался с помощью VCL?
И откуда такие данные? Посмешите-ка меня и других участников форума!


 
qube ©   (2002-10-10 17:47) [20]

Johnny Smith © (10.10.02 17:42)
Читайте внимательнее.
По-вашему выходит, что если в Photoshop не использовано ничего, кроме CWinApp, CFrameWnd, etc, то MFC в серьезных проектах не используется. Значит, VCL -- тем более не используется в "серьезных проектах", по вашей же логике.
А грубить не надо.


 
Johnny Smith ©   (2002-10-10 18:00) [21]

2qube © (10.10.02 17:47)
А грубить не надо.
Ну-ка, приведите пример грубости?
По-вашему выходит, что если в Photoshop не использовано ничего, кроме CWinApp, CFrameWnd, etc, то MFC в серьезных проектах не используется. Значит, VCL -- тем более не используется в "серьезных проектах", по вашей же логике.
Да нет, это у Вас с логикой не в порядке. Объясните, как у Вас получилось отождествить MFC и VCL? Если такое говорил я, приведите ссылку.


 
Suntechnic ©   (2002-10-10 18:04) [22]

Дорогой Johnny Smith ©. Вам здесь никто ничего не собирается доказывать, если вы ещё ничего не поняли. А на поруганную честь MFC мне ещё больше начхать чем Вам. Доношу до Вас свою мысль, если вы её не поняли из моего поста "Техника в руках дикаря кусок железа".
А насчёт "серьёзных проектов"... я лично каждый свой проект считаю серьёзным. И писал я их как на VCL, так и на MFC(причём это ещё вопрос на чём я писал больше). И мазохистом себя не чувствовал ни на секунду нигде... выводы делайте сами.


 
qube ©   (2002-10-10 18:06) [23]

>Ну-ка, приведите пример грубости?
Хотя бы "это у Вас с логикой не в порядке"
Давайте не будем ссориться, коллеги, все-таки. :)
Всегда между сторонниками MS и Borland драка выходит. Я не отношусь ни к первым, ни ко вторым. Просто крики "M$ - ацтой" основательно достали.
Попытаюсь повторить qube © (10.10.02 17:47) другими словами.
VCL не используется в Фотошопе. Следовательно, VCL использовать несерьезно, так? Относительно MFC у Вас же так получалось?


 
Suntechnic ©   (2002-10-10 18:09) [24]

>Johnny Smith © (10.10.02 16:56)
Ну-ка, приведите пример грубости?


Вот это можно воспринимать как грубость несмотря на смайлики в конце. Всё зависит от мира и интернето восприятия человека. Так как вы наверняка не знаете восприятие своего оппонента, то я бы воздержался от подобных фраз... хотя лично для меня они ничего не значат. Я их просто игнорирую.

Johnny Smith © (10.10.02 16:56)
2Suntechnic © (10.10.02 16:21)
Ну-ну...
Вы что, объявляете крестовый поход за поруганную честь MFC? Тогда флаг вам в руки, два плюса на спину, перо в... Ну, не хотите туда, тогда в шлем :))))




 
Johnny Smith ©   (2002-10-10 18:12) [25]

2Suntechnic © (10.10.02 18:04)
Вам здесь никто ничего не собирается доказывать, если вы ещё ничего не поняли.
Спасибо! А то я было подумал, что нахожусь на уроке геометрии.
А на поруганную честь MFC мне ещё больше начхать чем Вам.
Мелочь, а приятно!
А насчёт "серьёзных проектов"... я лично каждый свой проект считаю серьёзным.
А я, представьте, не все. Мне кажется, Вы не вполне самокритичны. Неужели ни разу, взглянув на написанное пару лет назад, Вы не воскликнули: "И это писал Я???". Нет, может быть Вы изначально были непогрешимым программистом и Вам не нужен профессиональный рост, во время которого всегда производятся переоценки сделанного ранее.
И мазохистом себя не чувствовал ни на секунду нигде
Браво!


 
Suntechnic ©   (2002-10-10 18:19) [26]

>Johnny Smith © (10.10.02 18:12)
А я, представьте, не все. Мне кажется, Вы не вполне самокритичны. Неужели ни разу, взглянув на написанное пару лет назад, Вы не воскликнули: "И это писал Я???". Нет, может быть Вы изначально были непогрешимым программистом и Вам не нужен профессиональный рост, во время которого всегда производятся переоценки сделанного ранее.


Не путайте котлет с мухами. То что я считал проект серьёзным совсем не означало, что имплементация была идеальная. Между этими понятиями вообще никакой связи нет. Естественно на любой проект смотришь через пару лет и понимаешь что кое-что можно было сделать лучше. Но это этого проект "менее серьёзным" не становится. Мне лично просто смешно, когда на этом сайте начинаются дебаты "серьёзных проектов".


 
Дмитрий Баранов ©   (2002-10-10 18:52) [27]

qube © (10.10.02 17:15)

Давайте оставим взаимные оскорбления.

Имею обыкновение почитывать и разбирать по вечерам примеры MSDN, в том числе Q&A: C++, среди моих любимых авторов - Paul di Lascia, один их ведущих программеров MS. Вы не разбирали примеры создания CoolBar на MFC? В Builder это делается в десяток щелчков мышкой. Почитайте! Вечера три на разбор иерархии классов, стиля программирования и ковыряния в низкоуровневом апишном коде у вас уйдет. При том, что в 98 этот пример работает прямо, а в 2000 - криво. Попробуйте! :) Потом объясните мне, пожалуйста, неужели настолько сложно этим монстрам в конце концов сделать нормальную RAD-библиотеку для народонаселения?
( Про C# - не надо )


 
Странник ©   (2002-10-10 20:31) [28]

> Suntechnic © (10.10.02 18:19)
поясню что я имел ввиду под "мазохизмом".
Именно то, что сказал: формочки клепать как привыкло большинство начинающих - взял батон с панели - сунул на формочку - и ура, комплекс программ готов.

А если серьезно, то инструмент выбирается под проект, а не проект под инструмент.
Если какая-то часть д.б. или проще ее сделать на VC+MFC, значит так оно и будет и т.д. и т.п.

А вот отсутствие массивов нулевой длины меня совсем не радует, люблю я это дело :)



Страницы: 1 вся ветка

Текущий архив: 2002.10.31;
Скачать: CL | DM;

Наверх




Память: 0.56 MB
Время: 0.014 c
8-101389
onio
2002-07-04 17:34
2002.10.31
Как векторизировать растровое изображение?


3-101146
Stayl
2002-10-11 05:53
2002.10.31
Options в RxDBGrid - e


6-101407
Termik
2002-08-30 11:10
2002.10.31
Сетевые интерфейсы одиночной машины в Win2k/XP.


14-101444
Лана Розанова
2002-10-10 14:36
2002.10.31
Всем


14-101459
AL2002
2002-10-10 21:28
2002.10.31
Как сохранить чат?