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

Передача элементов перечисления (enum) в конструктор - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сообщающиеся сосуды http://www.cyberforum.ru/cpp-beginners/thread978458.html
Помогите,пожалуйста, написать программу. Вот такая "картинка" дожна получится . заранее спасибо)
C++ Препятствия в "Черепашке" Написал следующую программу, некое подобие школьной "Черепашки" #include <iostream> #include <conio.h> using namespace std; int main(){ int j, i, x, y; char a, tab; x=0;y=0; for(;;){ http://www.cyberforum.ru/cpp-beginners/thread978456.html
Не получается написать алгоритм, подскажите пожалуйста! Буду очень благодарен C++
В ряд записано N (1 <= N <= 100) нулей. Два игрока по очереди могут за один ход превратить один или два нуля в единицу. Побеждает тот, кто делает последний ход. Определить победителя, если оба игрока придерживаются выигрышной стратегии. Входные данные: Во входном потоке дана строка состоящая из нулей. Длина строки не превышает 100 символов. Выходные данные: В выходной поток вывести 1 -...
Найдите ошибку C++
Если честно, совсем не понимаю как решать. Вычислить Думала как то так, но видимо нет #include <iostream.h> #include<math.h> int main() { int n=1; double S=0, s=1; do{
C++ Не получяетсья написать алгоритм, подскажыте пожайлуста! Буду очень благодарен http://www.cyberforum.ru/cpp-beginners/thread978443.html
В ряд записано N (1 <= N <= 100) нулей. Два игрока по очереди могут за один ход превратить один или два нуля в единицу. Побеждает тот, кто делает последний ход. Определить победителя, если оба игрока придерживаются выигрышной стратегии. Входные данные: Во входном потоке дана строка состоящая из нулей. Длина строки не превышает 100 символов. Выходные данные: В выходной поток вывести 1 -...
C++ Найти уникальные элементы в массиве Ребята нужна помощь, у меня есть массив, к примеру: O O O O O l l O O P O O O А мне нужно найти и вывести O,l,P, то есть элементы, так сказать, без их "клонов", набросков нет, точнее есть, но там полный бред, так как не могу понять самого алгоритма. как это делать, помогите, пожалуйста подробнее

Показать сообщение отдельно
Paket236
2 / 2 / 0
Регистрация: 16.08.2013
Сообщений: 52

Передача элементов перечисления (enum) в конструктор - C++

15.10.2013, 21:29. Просмотров 1119. Ответов 3
Метки (Все метки)

Всем добрый день!
Заметил некоторые странности при передачи элементов перечисления в конструктор. Вот пример:

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
#include <iostream>
using namespace std;
 
class B
{
public:
    enum cmp_mode {normal, reverse};    
private:
    cmp_mode mode;
public:
    B(cmp_mode m=normal): mode(m) {}
};
 
int main()
{
    B();                // инициализация безымянного объекта конструктором без параметров
    B();                // снова инициализация безымянного объекта конструктором без параметров
    B(normal);          // инициализация безымянного объекта конструктором с 1 параметром
//  B(normal);          // [?] ошибка: "error C2086: B normal: переопределение". Почему?
//  B(B::normal);       // [?] ошибка: "error C2761: B::cmp_mode normal: повторное объявление функции не разрешается". Почему?
    B obB(B::normal);   // [?] почему работает, если похожая инструкция B(B::normal) выдаёт ошибку? Всего лишь дописал объекту имя.
 
    system("pause");
    return 0;
}

Помогите разобрать строчки, помеченные "[?]". Никак не могу понять
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru