Существует ли путь, переформатировали код в FlashDevelop?

Меня попросили написать код, который получает тип данных, не уточняя, какой тип (например, int, float, double ect ..) и, конечно же, его число.

Так, как я могу использовать все типы данных?

Вы не можете. Точнее говоря, сам процессор не может. Чтобы сравнить 2 числа, ЦП должен знать, какой размер у чисел, если числа целочисленные или с плавающей запятой, и (если это не просто сравнение на равенство), если число подписано или нет.

Есть 3 способа:

a) Дублирование кода (включая шаблоны в C ++, где компилятор автоматически генерирует N версий кода для N типов и использование макросов в C для аналогичного выполнения). [ 1112]

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

c) злоупотреблять переменными аргументами и иметь ветви времени выполнения, основанные на аргументе «что это за тип» (и повышенный риск ошибок программиста); как int findselectnum(char *data_type, int size, ...). В основном это заканчивается скрытым дублированием кода (например, вы дублируете цикл в каждом case из switch(data_type)).

В зависимости от реальной ситуации; Я бы использовал смесь первых двух вариантов - например, выясните, почему программное обеспечение было так плохо спроектировано, что оно должно выполнять одну и ту же работу с несколькими различными типами, а затем попытайтесь изменить дизайн, чтобы ему нужно было заботиться только о небольшом количестве различных типов; затем иметь небольшое количество различных функций для типов, которые «неизбежно необходимы» (например, может быть int findselectnum_int(int num, int array[], int size) и отдельный int findselectnum_double(double num, double array[], int size); ничего не для float или short или чего-либо еще, потому что их можно было избежать). [ 1115]

9
задан Edward Tanguay 23 October 2008 в 08:21
поделиться

1 ответ

открытый netbeans 6.5, создайте XML-файл и затем вставьте свой код MXML; щелкните правой кнопкой, форматируйте код, наконец скопируйте этот форматированный текст с netbeans и мимо него в разработчике гибкого провода. это - все.... я надеюсь быть полезным

-8
ответ дан 5 December 2019 в 01:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: