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

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

Войти
Регистрация
Восстановить пароль
 
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
#1

Макрос который создает класс - C++

10.07.2015, 15:57. Просмотров 280. Ответов 10
Метки нет (Все метки)

Создал макрос который создает класс, но почему то он не работает, инициализация класса не происходит????
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
#include <iostream>
using std::cout;
 
//создадим свой макрос
#define MY_MACROS(a, b) \
    class a \
        {\
        public:\
        int k;\
        a(int k_=100):k(k_){}\
};\
    class b\
{public:\
int k;\
    b(int k_=111):k(k_){}\
};
 
int main()
{
 
    cout <<"start\r\n";
 
    MY_MACROS(cl,bb);
 
    cl obj(10);
    bb obj1(11);
    cout <<"obj.k= "<<obj.k+"\r\n";
    cout <<"obj1.k= "<<obj1.k+"\r\n";
 
 
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.07.2015, 15:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Макрос который создает класс (C++):

Написать класс, который создает и выводит массив - C++
Помогите изменить этот код чтобы был класс который создает и выводит мой массив)7 #include &lt;iostream&gt; using namespace std; void...

Необходимо создать класс, который создает линию разлива воды - C++
необходимо создать класс, который создает линию разлива воды.дан объем общего бака линии. бутылки емкостью 4,9,17. подсчитать общее...

написать фрагмент программы на языке С + +, который получает у пользователя путь и имя файла и создает его... - C++
Помогите очень надо...(((

Класс, полиморфизм (Написать класс, который хранит в себе некий номер ''nip'', проверит его на правильность и вывести результат) - C++
Задача. Написать класс, который хранит в себе некий номер ''nip'', проверит его на правильность и вывести результат. Вообщем-то ни...

Добавить в строковый класс функцию, которая создает строку, содержащую пересечение двух строк - C++
Вот такое задание: Добавить в строковый класс функцию, которая создает строку, содержащую пересечение двух строк, то есть общие символы...

Макрос, который будет вычислять среднее из трех чисел - C++
Ребятки, а как мне написать макрос, который будет вычислять среднее из a,b и c?

10
hoggy
6692 / 2874 / 494
Регистрация: 15.11.2014
Сообщений: 6,466
Завершенные тесты: 1
10.07.2015, 16:37 #2
лекарство:

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
#include <iostream>
using std::cout;
 
//создадим свой макрос
#define MY_MACROS(a, b) \
    class a \
        {\
        public:\
        int k;\
        a(int k_=100):k(k_){}\
};\
    class b\
{public:\
int k;\
    b(int k_=111):k(k_){}\
}
 
int main()
{
 
    cout <<"start\r\n";
 
    MY_MACROS(cl,bb);
 
    cl obj(10);
    bb obj1(11);
    cout <<"obj.k= "<<obj.k << "\n";
    cout <<"obj1.k= "<<obj1.k <<"\n";
 
 
    return 0;
}
1
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
10.07.2015, 18:32  [ТС] #3
Цитата Сообщение от hoggy Посмотреть сообщение
лекарство:
А что ты изменил? Ты вроде ниче не изменил, я щас пробую у меня и мой старый код работать начал вроде хз. что за глюк

нет мой не работает

Добавлено через 3 минуты
hoggy, а ясно в выводе там ошибка
0
Evg
11.07.2015, 11:31
  #4

Не по теме:

Вместо "\r\n" лучше используй std::endl. Его смысл в том, чтобы не заморачиваться вопросами, как на данной системе правильно делать перевод строки

0
-=ЮрА=-
11.07.2015, 11:36
  #5

Не по теме:

Цитата Сообщение от ninja2 Посмотреть сообщение
А что ты изменил? Ты вроде ниче не изменил,
- точку с запятой он убрал
Цитата Сообщение от ninja2 Посмотреть сообщение
b(int k_=111):k(k_){}\
};

0
hoggy
6692 / 2874 / 494
Регистрация: 15.11.2014
Сообщений: 6,466
Завершенные тесты: 1
11.07.2015, 12:06 #6
Цитата Сообщение от Evg Посмотреть сообщение
Вместо "\r\n" лучше используй std::endl. Его смысл в том, чтобы не заморачиваться вопросами, как на данной системе правильно делать перевод строки
можно просто '\n'.
это стандартно (кросс-платформенно)

std::endl отличается только тем, что сбрасывает буфер потока.
0
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
11.07.2015, 14:26  [ТС] #7
Цитата Сообщение от Evg Посмотреть сообщение
Вместо "\r\n" лучше используй std::endl. Его смысл в том, чтобы не заморачиваться вопросами, как на данной системе правильно делать перевод строки
в мфс нету iostream, то сразу чтобы привыкать "\r\n" писать.

Добавлено через 1 минуту
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
- точку с запятой он убрал
нет он в cout добавил << вместо +
было так: cout <<"obj.k= "<<obj.k+"\r\n";
стало так: cout <<"obj.k= "<<obj.k<<"\r\n";
0
castaway
Эксперт С++
4887 / 3022 / 370
Регистрация: 10.11.2010
Сообщений: 11,080
Записей в блоге: 10
Завершенные тесты: 1
11.07.2015, 15:19 #8
Цитата Сообщение от ninja2 Посмотреть сообщение
в мфс нету iostream
А cout тогда там откуда?
0
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
11.07.2015, 15:33  [ТС] #9
Цитата Сообщение от castaway Посмотреть сообщение
А cout тогда там откуда?
ОН В main добавил, макрос правильно написан
0
castaway
Эксперт С++
4887 / 3022 / 370
Регистрация: 10.11.2010
Сообщений: 11,080
Записей в блоге: 10
Завершенные тесты: 1
11.07.2015, 15:43 #10
Цитата Сообщение от ninja2 Посмотреть сообщение
ОН В main добавил, макрос правильно написан
Я не про макрос говорил. Кто ОН, и что ОН и куда добавил?
0
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
11.07.2015, 16:43  [ТС] #11
Цитата Сообщение от castaway Посмотреть сообщение
Я не про макрос говорил. Кто ОН, и что ОН и куда добавил?
то я попутал. cout там вроде ниче вывести нельзя
0
11.07.2015, 16:43
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.07.2015, 16:43
Привет! Вот еще темы с ответами:

Макрос-класс? - C++
Привет всем! Порылся в источниках teeworlds и нашёл вот что: class IClient : public IInterface { MACRO_INTERFACE(&quot;client&quot;, 0) ...

Класс, который невозможно наследовать - C++
Как создать класс, который невозможно наследовать? Видимо, поместить конструктор в раздел private? Кто что скажет по этому поводу?

Макрос, который принимает два значения (a, b) и возвращает строку "ab" - C++
Помогите с макросом. Он должен принимать два значения (a, b) и возвращать строку &quot;ab&quot;

Класс который рисует на экране звезду - C++
Помогите исправить ошибку. Нужно создать класс которорый рисует на экране звезду. Класс написал и все работало, но надо сделать...


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

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

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