Вы смотрите, насколько большими становятся ваши переменные, а затем выбираете тип данных соответственно, чтобы быть более эффективным? - PullRequest
2 голосов
/ 11 января 2011

Это может звучать странно, но мне любопытно. Если вы хотите сделать свой код максимально эффективным, будет ли это обычным делом для людей? Например, вы можете использовать короткие типы данных вместо типов данных int для выполнения вашей обработки. Или это обычно тот случай, когда эффективность намного меньше времени, затрачиваемого на эффективное кодирование?

Спасибо ...

Ответы [ 6 ]

3 голосов
/ 11 января 2011

Вы должны никогда использовать типы short, char, float или аналогичные, за исключением создания массивов.В противном случае используйте int, size_t, double или более крупные типы по мере необходимости.

1 голос
/ 11 января 2011

На большинстве машин int быстрее, чем short / char, поэтому здесь не о чем думать. Всегда используйте int, если вам не нужны 64-битные целые числа. Или, может быть, если вам действительно нужно сэкономить память, тогда могут быть полезны меньшие типы.

Между поплавком и двойным, я думаю, лучше по умолчанию на двойном, просто потому, что точность на плаву довольно плоха для любого рода численных расчетов. Только если вам действительно нужна дополнительная производительность и вам не нужна точность, используйте float.

1 голос
/ 11 января 2011

Если вы используете ограниченную по ресурсам платформу, такую ​​как встроенная система, может быть полезным, а иногда даже необходимо выбрать короткий или char вместо int для сохранения памяти. В противном случае придерживайтесь типов данных int и double.

1 голос
/ 11 января 2011

Нет, на самом деле, если у вас нет ограничений памяти, нет причин преждевременно уменьшать размер ваших типов.

Места, где вы должны быть осторожны, хотя, например, используете большие типы в длинных массивах или большие структуры (т. Е. Имеет много членов), которые часто используются.

1 голос
/ 11 января 2011

Если это структура, которая будет иметь много экземпляров в программе, тогда я более осторожно выбираю типы подходящего размера для экономии памяти.int в качестве параметра функции только потому, что вы предполагаете, что диапазон будет маленьким, немного глупо для ИМО.

0 голосов
/ 11 января 2011

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...