![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Wowa |
|
|||
|
Эксперт Профиль Группа: Админ Сообщений: 15017 Регистрация: 14.9.2000 Где: Винград Репутация: нет Всего: 290 |
Так как C от Borland существует также под *никс, в отличие от VC.
Все это - ИМХО Я не прав? |
|||
|
||||
| Vit |
|
|||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: нет Всего: 207 |
Как я понимаю они совсем разные, MS ближе к оси, лучше и напрямую интегрирован в винды, Builder - более платформо независим, с более богатыми библиотеками компонентов, но это достигается более сильной инкапсулированностью и вследствии этого большей тяжеловестностью. Собственно Builder больше похож на среду для быстрой разработки навороченных интерфейсов, а VC гораздо оптимален для разработки системных вещей.
-------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
|||
|
||||
| suborg |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 29.4.2002 Где: Москва Репутация: нет Всего: нет |
Не думаю, что это - хороший вариант... Под никсами практически стандарт - GNU C, а он полностью соответствует спецификации, определяемой комитетом по С++. Борландовский не соответствует. Так что исходники Борландовские не портируются в GNU, то есть уже как бы нехорошо в никсах становится.
Пример: в борланде переменная, созданная внутри объявления цикла существует до конца блока, а в GNU - до конца цикла. |
|||
|
||||
| Vyacheslav |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 9 Всего: 59 |
Borland C++ - полностью ANSI совместимый компилятор. Если хотите сдедать полностью переносимое приложение ставте галочку на ANSI C++ и спокойно переносите. Но уже без VCL. Другой вариант. Сейчас пока создавайте приложения для Windows используя CLX - межплатформенный аналог VCL. Во второй половине 2002 года Borland выпустит среду C++ для Linux. Переносимость на уровне исходников.
Не понял, что такое конец цикла в данном контексте. Или понимается, что переменная сущестует пока не закончится перебор? Если так то это класс!!!.Это что-то новое в стандарте С++. Страструп отдыхает. Видимость локальной переменной всегда и везде определялась блоком ( на всякий случай это скобочки в цикле for(int i = 0; i <1; ++) { int LocalValue = 0; if (!i ) LocalValue = 5; cout << LocalValue << endl; } GNU 5 5 Borland (и ANSI C++) 5 0 Если я не правильно понял, поясни на этом примере до куда доживает переменная LocalValue -------------------- С уважением, Вячеслав Ермолаев |
||||
|
|||||
| suborg |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 29.4.2002 Где: Москва Репутация: нет Всего: нет |
Сейчас я поясню:
for(int i=10; --i>=0;) { ля ля тополя } if(i>=0) ля ля тополя С точки зрения BC всё в порядке, но на самом деле переменная i должна перестать существовать за рамками блока цикла, и в if её уже не будет видно |
|||
|
||||
| Wowa |
|
|||
|
Эксперт Профиль Группа: Админ Сообщений: 15017 Регистрация: 14.9.2000 Где: Винград Репутация: нет Всего: 290 |
i - не должна быть за пределами цикла, если по правилам
|
|||
|
||||
| Vit |
|
|||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: нет Всего: 207 |
Кстати Билдер заметив такую ситуацию честно предупреждает о том чтобы не надеялись на то что значение i будет именно таким, каким его ожидают.
-------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
|||
|
||||
| Vyacheslav |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 9 Всего: 59 |
Мужики я все понял
int main(int argc, char* argv[]) { int a[10]; for (int i = 0; i < 10; i++) a[i] = i; i = 12; } Четко выдает ошибку в строке "i=12" как и положено в соответствии ANSI C++ [C++ Error] Unit1.cpp(19): E2451 Undefined symbol 'i' -------------------- С уважением, Вячеслав Ермолаев |
|||
|
||||
| Vyacheslav |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 9 Всего: 59 |
Да, и небольшое замечание. Если хочешь использовать for таким образом, то проще написать for(int i = 10; i--;) -------------------- С уважением, Вячеслав Ермолаев |
|||
|
||||
| suborg |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 29.4.2002 Где: Москва Репутация: нет Всего: нет |
Во, мазово
спасибо. Люблю компактные исходники. Вещи типа cout<<(i?"true":"false"); тоже приято иногда влепить главное чтобы читаемость кода не разрушилась |
|||
|
||||
| Vyacheslav |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 9 Всего: 59 |
Похоже это не к Builder, а к VC++. Вот например какую информацию я отловил в RU.CBUILDER
-------------------- С уважением, Вячеслав Ермолаев |
||||
|
|||||
| Vyacheslav |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 9 Всего: 59 |
Вот нашел интересную информацию по дальнейшему развитию компилятора Borland С++ (по результатам конференции BorCon 2002)
И примерный перевод одной из наиболее интресных будущих возможностей
Т.е появляется возможность определять свои языковые конструкции, которые , я так понял, будут преобразованы после первого этапа в стандартный С++ , и на последнем этапе не трогая самого компилятора получать нужный код (MSIL, например) -------------------- С уважением, Вячеслав Ермолаев |
||||
|
|||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |