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

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

Войти
Регистрация
Восстановить пароль
 
AutumnRain
0 / 0 / 0
Регистрация: 13.01.2013
Сообщений: 4
#1

Написать шаблон для класса "Рабочий" - C++

13.01.2013, 03:40. Просмотров 376. Ответов 2
Метки нет (Все метки)

Всем доброго время суток!
У меня возникла следующая проблема. Препод дал задание: написать шаблон для класса "Рабочий" с полями имени, фамилии, занимаемой должности и года приема на работу. И вот в чем проблема. Препод сказал сделать, чтоб шаблон работал для поля года и должности с типом int и символьной строкой. Разве это возможно?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
template <class TypeP, class TypeY> 
class Worker
{
private:
    char *name;
    char *surname;
    TypeP *pos;
    TypeY *year; //В случае со строкой все ок, но ведь для int не катит!
public:
    Worker();
    void Add(char *name,char *surname,TypeP *pos,TypeY *year);
    void Show();
};
Думала сделать год массивом {1,9,9,1}, но для должности заранее неизвестно сколькими цифрами она шифруется. Короче запуталась. Подскажите плиз
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.01.2013, 03:40     Написать шаблон для класса "Рабочий"
Посмотрите здесь:

Написать перегрузку operator+() для класса "Массив" - C++
Добрый день, Подскажите, как выйти правильно из ситуации: Array&amp; Array::operator+(const Array&amp; obj) { Array temp; ...

Шаблон класса "Стек" на основе массива - C++
Напишите шаблон класса &quot;Стек&quot;на основе массива.Предусмотрите функции добавление и извлечения элемента,удаление всего стека.Напишите класс...

Шаблон класса "Бинарное дерево" с насследованием - C++
Здравствуйте! Есть задание сделать шаблон класса &quot;Бинарное дерево&quot;. #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std;...

Шаблон класса "Животное" (Мультимножество) - C++
Имею первый опыт работы с шаблонами класса. Подскажите, что делаю не так. Задание: Вариант 15 - Мультимножество(Структура данных) -...

Шаблон класса "Однонаправленный список" - C++
Доброго времени суток. Возник вопрос по шаблонам. С самими шаблонами я вроде бы разорался, и вот хотелось бы сделать такую вещь. Чтобы я...

Разработать шаблон класса "Очередь" - C++
Люди, помогите пожалуйста, последняя лаба осталась, ни как не могу решить! Тема: Шаблоны Классов. необходимо разработать шаблон класса...

Паттерн "Итератор" для шаблонного класса "Словарь" - C++
Препод дал задание сделать шаблонный словарь и реализовать для него иттератор. Сделал словарь, но как работать с иттератором я понятия не...

Шаблон класса "Пациент" - C++
Ошибка в строчках Patient &lt;int, float&gt; patient1(21, 234, 3, 4, 123, 123); Patient &lt;int, float&gt; patient2(21, 234, 3, 4, 123, 123); ...

Шаблон класса "Очередь" - C++
описать класс:очередь (динамическая структура) тип данных:int,double,float.в каждом классе должны быть конструкторы с параметрами....

Перегрузка "opеrator =" и "{ }" для собственного класса - C++
Я пытаюсь создать класс Vector. Для задания элементов вектора хотелось бы использовать &quot;opеrator =&quot; и &quot; { } &quot;. Возможно ли...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
13.01.2013, 03:53     Написать шаблон для класса "Рабочий" #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
#include <iostream>
#include <string.h>
 
template <typename T>
class Test
{
public:
   T value;
};
 
int main()
{
   Test<int> int_test;
   int_test.value = 2012;
   std::cout << int_test.value << std::endl;
   
   Test<char*> char_test;
   char_test.value = new char[5];
   strcpy(char_test.value, "2013");
   std::cout << char_test.value << std::endl;
   delete [] char_test.value;
   return 0;
}
AutumnRain
0 / 0 / 0
Регистрация: 13.01.2013
Сообщений: 4
13.01.2013, 20:03  [ТС]     Написать шаблон для класса "Рабочий" #3
Спасибо большое за идею! Так и сделала
Ответ Создать тему
Опции темы

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