Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
taras atavin
3888 / 1762 / 92
Регистрация: 24.11.2009
Сообщений: 27,565
#1

Перегруженный вывод enum - C++

04.12.2012, 14:57. Просмотров 321. Ответов 0
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
//=====================================================================================================================================================================================================
std::ostream                  &operator<<  (std::ostream        &Stream    ,
                                            TLoadColladaResult   CodeResult)
{
 switch (CodeResult)
 {
  case TLCRNoError:Stream<<"No error."<<std::endl;
  return Stream;
  case TLCRNoFile :Stream<<"No file."<<std::endl;
  return Stream;
 }
 Stream<<"Unknown result code."<<std::endl;
 return Stream;
}
//=====================================================================================================================================================================================================
std::ostream                  &operator<<  (std::ostream        &Stream    ,
                                            TParseColladaResult  CodeResult)
{
 int                 ErrorMaskIndex;
 TParseColladaResult ErrorMask;
 TParseColladaResult LastMask;
 TParseColladaResult FirstMask;
 TParseColladaResult Error;
 bool                First;
 bool                Last;
 static char         Out[2][2][5][32]={{{"no XML tag, ", "invalidete XML tag, ", "no supporting encoding, ", "no COLLADA root tag, ", "parse error, "}, {"no XML tag.", "invalidete XML tag.", "no supporting encoding.", "no COLLADA root tag.", "parse error."}}, {{"No XML tag, ", "Invalidete XML tag, ", "No supporting encoding, ", "No COLLADA root tag, ", "Parse error,"}, {"No XML tag.", "Invalidete XML tag.", "No supporting encoding.", "No COLLADA root tag.", "Parse error."}}};
 if (((unsigned int)CodeResult)>0x1F)
 {
  Stream<<"Unknown result code."<<std::endl;
  return Stream;
 }
 if (CodeResult==TPCRNoError)
 {
  Stream<<"No error."<<std::endl;
  return Stream;
 }
 for (ErrorMaskIndex=0; ErrorMaskIndex<5; ++ErrorMaskIndex)
 {
  ErrorMask=(TParseColladaResult)(0x01<<ErrorMaskIndex);
  Error=(TParseColladaResult)(CodeResult&ErrorMask);
  FirstMask=(TParseColladaResult)(((unsigned int)ErrorMask)-1);
  LastMask =(TParseColladaResult)(0x1F^(FirstMask|ErrorMask));
  First=(CodeResult&FirstMask)==0x00;
  Last =(CodeResult&LastMask )==0x00;
  if (Error!=0x00)
  {
   Stream<<Out[First][Last][ErrorMaskIndex];
  }
 }
 Stream<<std::endl;
 return Stream;
}
//=====================================================================================================================================================================================================
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.12.2012, 14:57
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Перегруженный вывод enum (C++):

вывод значений Enum - C++
вот есть у меня такой enum ColorType { black, white, green, yellow = 13, red, rose = 15 };

Вывод значения типа enum C++ - C++
Как сделать вывод значения типа enum через printf() ? #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;stdio.h&gt; using namespace...

Enum == int !=enum? - C++
enum Flags{ Flag1 = 1, Flag2 = 2}; int main() { Flags a = Flag1, b = Flag2; a = a | b; } error C2440: =: невозможно...

Перегруженный operator= - C++
Изучаю перегрузку, возник вопрос. Есть класс: class chk { private: int id; int data; public: chk(); chk(int _data);

Перегруженный оператор - C++
MathClass = Harry; Раньше я думал, что перегрузка - это предоставление оператору функций, которых, он изначально не имел. Что...

Перегруженный operator<< - C++
Есть допустим такая дружественная функция: объявление template&lt;typename Type&gt; friend std::ostream&amp; operator&lt;&lt;(std::ostream&amp;,...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.12.2012, 14:57
Привет! Вот еще темы с ответами:

перегруженный конструктор - C++
можно пример перегруженного конструктора ?)

перегруженный синус - C++
#include &lt;iostream&gt; #include &lt;cmath&gt; #define PI 3.14159265; using namespace std; int main(){ double a,b,x,y,e; e=2.71; ...

перегруженный оператор << - C++
подскажите как перегрузить оператор &lt;&lt; для класса как описать само перегружение friend ostream&amp; operator &lt;&lt; (ostream &amp;c, const...

Перегруженный оператор присваивания - C++
Достаточно информации прочитал, что такое перегруж. оператор присваивания, но не до конца понимаю суть данного вопроса - &quot;в каком месте...


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

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

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