Почему находится поддержка инструмента IDE C и C++ позади того, что доступно для управляемых платформ?

К сожалению, когда дело доходит до управления памятью в Flash/actionscript там не много, можно сделать. ActionScript был разработан для EA (таким образом, они не хотели, чтобы люди должны были волноваться об управлении памятью)

, следующее является обходным решением, вместо того, чтобы создать ByteArray, переменная пробует это.

var byteObject:Object = new Object();

byteObject.byteArray = new ByteArray();

...

//Then when you are finished delete the variable from byteObject
delete byteObject.byteArray;

, Где byteArray динамическое свойство byteObject, можно освободить память, которая была выделена для него.

5
задан James McNellis 31 October 2009 в 05:43
поделиться

6 ответов

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

Visual Studio 2010 имеет обновленный механизм C ++ IntelliSense. Им потребовалось много-много лет, чтобы сделать это, но его значительно улучшились.

11
ответ дан 18 December 2019 в 07:30
поделиться

Такие языки, как C и C ++, затрудняют завершение и исправление синтаксиса, потому что синтаксис более сложен, чем (скажем) Java. Например, препроцессор все усложняет.

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

Отладка сложнее, потому что C Более слабые системы типов / C ++ означают, что сложнее узнать, каковы на самом деле «настоящие» типы значений времени выполнения.

5
ответ дан 18 December 2019 в 07:30
поделиться

Недавно я смеялся над кодировщиками c / c ++, все еще использующими vim, пока они не попросили меня найти IDE, которая чисто обрабатывает условную компиляцию в большом проекте и ссылается на правильный экземпляр умножения- определен условно скомпилированный метод. Никто не справился с этой задачей.

Мораль: держите свой дизайн в чистоте, vim - это ваша IDE.

4
ответ дан 18 December 2019 в 07:30
поделиться

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

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

2
ответ дан 18 December 2019 в 07:30
поделиться

IDE всегда следует проверять, что документ имеет статус «завершен». Это просто костыли для программистов, не знающих своего дела. Купите себе хороший текстовый редактор и научитесь читать сообщения об ошибках компилятора.

-2
ответ дан 18 December 2019 в 07:30
поделиться

Если вы хотите открытый исходный код и перекрестите платформы, подключаемый модуль NetBeans C / C ++ имеет большую часть, если не все, из того, что вам нужно в среде IDE C / C ++.

1
ответ дан 18 December 2019 в 07:30
поделиться