Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
BigLow
55 / 55 / 6
Регистрация: 07.07.2013
Сообщений: 345
1

error C3168: bool: недопустимый базовый тип для перечисляемого типа

02.08.2013, 16:10. Просмотров 623. Ответов 5
Метки нет (Все метки)

В Visual C++ 2005 это не вызывает ошибки. А почему в Visual C++ 2010 ошибка?

C++
1
enum    State:bool{ON=true, OFF=false};  // error C3168: bool: недопустимый базовый тип для перечисляемого типа
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.08.2013, 16:10
Ответы с готовыми решениями:

typeid определяет тип указателя на базовый класс, как тип "базовый класс". Вне зависимости от присвоенного ему значения
Вот код: #include <iostream> #include <string> #include <conio.h>...

как правильно понять тип bool ? bool true(const string &str) и что дает это значение ?
задам может глупый вопрос, но прошу ответить. как правильно понять тип bool...

Базовый тип для времени в С++
Добрый вечер всем! Ребята, подскажите, существует ли в C++ некий базовый тип...

Тип bool, для чего нужен, как работает?
Может кто-нибудь поможет на простейшем но понятном примере объяснить как...

Разработка программ с использованием перечисляемого типа enum enumiration
Помогите составить программу: Составьте программу на языке C++ ...

5
ForEveR
В астрале
Эксперт С++
7996 / 4755 / 651
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
02.08.2013, 16:11 2
BigLow, По стандарту С++ указание underlying типа для перечисления допустима только с С++11.
Так что это расширение MSVC.

2005 - http://msdn.microsoft.com/en-us/library/2dzy4k6e%28v=vs.80%29.aspx
This can be any scalar type, such as signed or unsigned versions of int, short, or long. bool or char is also allowed.
2010 - http://msdn.microsoft.com/en-us/library/2dzy4k6e%28v=vs.100%29.aspx
This can be any scalar type, such as signed or unsigned versions of int, short, or long. bool or char is also allowed.
Собственно отличий по версиям нет, так что либо ошибка на MSDN, либо вы что-то делаете не так.
По-хорошему в 2010 студии уже были некоторые фичи С++11, вполне возможно, что это просто недоработка.
0
BigLow
55 / 55 / 6
Регистрация: 07.07.2013
Сообщений: 345
02.08.2013, 16:31  [ТС] 3
Не знаю. Мне кажется это дело в самой Visual Studio.

В последнее время она у меня глючит. То подсказки неправильно показывает, то еще другие проблемы возникают.

Буду переустанавливать ее
0
ForEveR
В астрале
Эксперт С++
7996 / 4755 / 651
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
02.08.2013, 16:48 4
BigLow, А с int-ом или чем-нибудь вроде работает? Или тоже нет?
0
BigLow
55 / 55 / 6
Регистрация: 07.07.2013
Сообщений: 345
02.08.2013, 16:57  [ТС] 5
ForEveR, и с int, и с short все прекрасно работает

А в CodeBlocks эта программа компилируется:
C++
1
2
3
4
5
6
7
8
9
10
#include<iostream>
 
enum    State:bool{OFF, ON};
 
 
int main()
{
 
    return 0;
}
Скорее всего дело в Visual Studio
0
Tulosba
:)
Эксперт С++
4749 / 3243 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
02.08.2013, 18:19 6
Цитата Сообщение от BigLow Посмотреть сообщение
Скорее всего дело в Visual Studio
VS2010:
warning C4480: nonstandard extension used: specifying underlying type for enum 'State'
IntelliSense: underlying type of enum type must be an integral type other than bool
VS2012: OK
0
02.08.2013, 18:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.08.2013, 18:19

Сформировать массив типа bool из массива типа char
Доброго времени суток! После ввода элементов массива вылазит ошибка...

Недопустимый неполный тип
Здравствуйте! Помогите решить проблему с недопустимы полным типом. Код:...

Односвязные списки: недопустимый неполный тип
По книге Седжвика пишу реализацию списков. Есть такие файлы: list.h: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru