Форум программистов, компьютерный форум CyberForum.ru

Странные типы - C++

Восстановить пароль Регистрация
 
kciosdse
0 / 0 / 0
Регистрация: 26.11.2012
Сообщений: 55
06.01.2013, 17:59     Странные типы #1
Всем добрый день. Хотелось бы узнать ответы на 2 вопроса:
1. Шаблонный тип - тип использующийся как шаблон для нескольких типов, а шаблоны типа - несколько шаблонных типов использующихся одним типом?
2. Зачем два одинаковых типа int и long? Или я что-то не так понял?
Кликните здесь для просмотра всего текста
http://msdn.microsoft.com/en-us/library/s3f49ktz(v=vs.80).aspx


Буду благодарен за ответы.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.01.2013, 17:59     Странные типы
Посмотрите здесь:

Странные ошибки в функции C++
цикл while,странные результат C++
C++ Странные ошибки
Странные поведения с float C++
C++ Откуда берутся странные числа?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DU
1477 / 1053 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
06.01.2013, 18:09     Странные типы #2
по мне логичнее рассуждать так:
C++
1
2
3
4
5
6
7
8
9
10
//шаблон типа - это еще не тип.
template <typename T>
struct Foo {};
 
//шаблонный тип - это тип, который генерится на основе шаблона:
Foo<int> fooInt;
Foo<char> fooChar;
 
//Переменные шаблона типа создавать нельзя, т.к. это не тип.
//Переменные шаблонных типов создавать можно.
По поводу int и long:
это в одном компиляторе их битовое представление может совпадать, но стандарт не
гарантирует это. в других компиляторах это может быть по другому.
на что можно рассчитывать: sizeof(int) <= sizeof(long)
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
06.01.2013, 18:10     Странные типы #3
Цитата Сообщение от kciosdse Посмотреть сообщение
Зачем два одинаковых типа int и long?
В 64-битном линухе, к примеру, sizeof(long) == 8; sizeof(int) == 4.
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4237 / 2770 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
06.01.2013, 18:13     Странные типы #4
Например в gcc для 32 бит int и long равны, а для 64 бит long уже 8 байт, а int так же 4.

Добавлено через 19 секунд
блин, страницу не обновил
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,061
06.01.2013, 18:17     Странные типы #5
Цитата Сообщение от kciosdse Посмотреть сообщение
Зачем два одинаковых типа int и long?
они не одинаковые ( правда на некоторых платформах могут совпадать)
есть short int long
short должен быть меньше или равен int
long больше или равен int
на 16 битных платформах (если правильно помню)
short=int=2 байта
long=4 байта
про 64 битные тебе сказали
kciosdse
0 / 0 / 0
Регистрация: 26.11.2012
Сообщений: 55
06.01.2013, 18:21  [ТС]     Странные типы #6
Ясно, всем спасибо!
Yandex
Объявления
06.01.2013, 18:21     Странные типы
Ответ Создать тему
Опции темы

Текущее время: 22:22. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru