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

клас птиц - C++

Восстановить пароль Регистрация
 
vityasdsdgf
0 / 0 / 0
Регистрация: 28.10.2013
Сообщений: 5
28.10.2013, 23:12     клас птиц #1
Ребята помогите!!!!!

1)Создать консольный проект, в котором используется приведенный класс Student. Создать экземпляры этого класса и исследовать возможность доступа к закрытой и открытой областей.
C++
1
2
3
4
5
6
7
8
9
class Student
{
private:
string name;
int age, course;
public:
void setData();
void getData();
};
2)реализовать метод setData() для ввода полей обьекта класса с клавиатуры
3)Реализовать метод getData () для вывода в консоль значений полей объекта класса Student.
4)Реализовать создания объекта класса Student через фактический параметр, а также через указатель. Продемонстрировать вызов методов класса, к созданным объектов
5)Создать простой класс согласно номеру варианта, используя свойство инкапсуляции данных и обращения к объектам этого класса напрямую и через указатель. Созданный класс должен иметь как минимум 3 переменные члены (поля), а также 2-3 методы


для варианта: клас птиц
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2013, 23:12     клас птиц
Посмотрите здесь:

клас обработчик C++
C++ создать клас HugeInt
C++ Векторы+клас
C++ матрица. клас
C++ матрица. клас. 2
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Крюгер
 Аватар для Крюгер
0 / 60 / 3
Регистрация: 16.11.2012
Сообщений: 409
Записей в блоге: 3
28.10.2013, 23:27     клас птиц #2
честно говоря вашу абракадабру с гуглом пополам понял, а собственно чего вы не можете сделать то?
всё эти задачи довольно просто решаемы. и да, советую ввод/вывод делать не как левые методы, а как перегруженные операторы << и >>
vityasdsdgf
0 / 0 / 0
Регистрация: 28.10.2013
Сообщений: 5
28.10.2013, 23:33  [ТС]     клас птиц #3
Если честно это задали нам в универе!!!Препода небыло весь семестр ,а под сесию пришол ы вот задал!!!!ПОМОГИТЕ пожалуйста
dzrkot
28.10.2013, 23:39
  #4

Не по теме:

Да да плохой препод, все такие преподы, или ты болел, или воевал с пришельцами, или ещё что-то...Возьми книгу и прочитай, у тебя была куча времени для этого, но ты страдал ф....ей, ну и будешь как следствие продавец консультант потом.

Крюгер
 Аватар для Крюгер
0 / 60 / 3
Регистрация: 16.11.2012
Сообщений: 409
Записей в блоге: 3
28.10.2013, 23:40     клас птиц #5
вообще как вариант можно сделать так и остальное развить и домыслить
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class Student
{
private:
string _name;
int _age, _course;
public:
void setData(string name; int age,course){ name_=name; age_=age; course_=course;} //---ГЄГ*ГЄ ГўГ*ðèГ*Г*ГІ
 
 
 
friend std::ostream& operator <<( std::ostream& o, const Student& v ){
o<<"Student(" <<"name"<<v.блабла
return o;}
///почти псевдокод
};
или всё же настоящий нужен?
vityasdsdgf
0 / 0 / 0
Регистрация: 28.10.2013
Сообщений: 5
28.10.2013, 23:47  [ТС]     клас птиц #6
Цитата Сообщение от Крюгер Посмотреть сообщение
вообще как вариант можно сделать так и остальное развить и домыслить
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class Student
{
private:
string _name;
int _age, _course;
public:
void setData(string name; int age,course){ name_=name; age_=age; course_=course;} //---ГЄГ*ГЄ ГўГ*ðèГ*Г*ГІ
 
 
 
friend std::ostream& operator <<( std::ostream& o, const Student& v ){
o<<"Student(" <<"name"<<v.блабла
return o;}
///почти псевдокод
};
или всё же настоящий нужен?




Если Вас не затруднит то настоящий!!!А на счет препода-правда!!!!Я фигней не страдал!!!ОБИДНО(

Добавлено через 2 минуты
Дак что поможете???
Крюгер
 Аватар для Крюгер
0 / 60 / 3
Регистрация: 16.11.2012
Сообщений: 409
Записей в блоге: 3
28.10.2013, 23:51     клас птиц #7
ну постараюсь...эхх с роду вы все такие на ночь глядя
vityasdsdgf
0 / 0 / 0
Регистрация: 28.10.2013
Сообщений: 5
29.10.2013, 00:01  [ТС]     клас птиц #8
Заранее ну оооооооочень благодарен!!!

Добавлено через 7 минут
а примерно через сколько вы сделаете?????
P/S: извените за спешность
Крюгер
 Аватар для Крюгер
0 / 60 / 3
Регистрация: 16.11.2012
Сообщений: 409
Записей в блоге: 3
29.10.2013, 00:32     клас птиц #9
vityasdsdgf,
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
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
class Student{
private: 
string _name;
int _age;
int _course;
public:
Student():_name("vasya"),_age(100),_course(500){}
Student(string n, int a, int c):_name(n),_age(a),_course(c){}
Student(const Student &s){_name = s._name; _age = s._age; _course = s._course;}
 
void setN(string name){_name = name;}
void setA(int age){_age =age;}
void setC(int course){_course = course;}
string getN(){ return _name;}
int getA(){return _age;}
int getC(){return _course;}
 
friend std::ostream &operator<<(std::ostream &stream, Student &r);
friend std::istream &operator>>(std::istream &stream, Student &r);
};
std::ostream &operator<<(std::ostream &stream, Student &r){
stream<<"(Student name:"<<r.getN()<<"  age:"<<r.getA()<<"  course:"<<r.getC()<<"\n)";
return stream;
}
std::istream &operator>>(std::istream &stream, Student &r){
std::cout<<"Name:";
stream>>r._name;
std::cout<<"Age:";
stream>>r._age;
std::cout<<"Course:";
stream>>r._course;
    return stream;}
 
 
 
int main(int argc, char *argv[])
{  Student s;
 //------ тебе задание яснее, тут ты уж сам используй выше приведенный класс
 //------класс полностью рабочий, нареканий по нему быть недолжно
 //------примени его как фантазия подскажет ;) 
cin>>s;               //---потестить тебе
cout<<s; 
 
 
    system("PAUSE");
    return EXIT_SUCCESS;
}
ну вот значит полностью рабочий код, как применить его думаю разберешься...

если нужны дополнительные комменты по коду я еще здесь


частенько спасаю людей от @н@льной кары(с)Крюгер
vityasdsdgf
0 / 0 / 0
Регистрация: 28.10.2013
Сообщений: 5
30.10.2013, 00:12  [ТС]     клас птиц #10
Такой еще вопрос:почему на Form1 ничего не показывает???Ошибок 100% нет

Добавлено через 35 секунд
Крюгер, Такой еще вопрос:почему на Form1 ничего не показывает???Ошибок 100% нет
Крюгер
 Аватар для Крюгер
0 / 60 / 3
Регистрация: 16.11.2012
Сообщений: 409
Записей в блоге: 3
31.10.2013, 18:33     клас птиц #11
vityasdsdgf, потому что этот пример для консоли

Добавлено через 23 секунды
(вернее вывод и ввод там в консоль)

Добавлено через 7 минут
ввод-вывод консольный
lemegeton
 Аватар для lemegeton
2909 / 1338 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
31.10.2013, 19:17     клас птиц #12
Птыц!
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
#include <iostream>
#include <string>
 
class Bird {
 public:
  Bird() : name(""), age(0) {}
  Bird(const std::string &name, int age) : name(name), age(age) {}
  const std::string &getName() const { return name; }
  int getAge() const { return age; }
 private:
  std::string name;
  int age;  
};
 
std::ostream &operator<<(std::ostream &stream, const Bird &bird) {
  return stream << "Bird{" <<
    "name=\"" << bird.getName() << "\", " <<
    "age=" << bird.getAge() << "}";
}
 
Bird readBird() {
  std::string name;
  int age;
  std::cout << "Bird name: ";
  std::cin >> name;
  std::cout << "Bird age: ";
  std::cin >> age;
  return Bird(name, age);
}
 
int main(int, char**) {
  Bird bird = readBird();
  
  std::cout << bird << std::endl;
  
  return 0;
}
Крюгер
 Аватар для Крюгер
0 / 60 / 3
Регистрация: 16.11.2012
Сообщений: 409
Записей в блоге: 3
09.11.2013, 16:03     клас птиц #13
lemegeton, ну ну...название поменял молоток!
lemegeton
 Аватар для lemegeton
2909 / 1338 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
09.11.2013, 17:42     клас птиц #14
Цитата Сообщение от Крюгер Посмотреть сообщение
lemegeton, ну ну...название поменял молоток!
Мой код очень отличается в том, как он работает.
Крюгер
 Аватар для Крюгер
0 / 60 / 3
Регистрация: 16.11.2012
Сообщений: 409
Записей в блоге: 3
09.11.2013, 21:08     клас птиц #15
lemegeton, да верю верю

Добавлено через 24 секунды
тестить времени нет , а так бы все прелести рассмотрел бы
ct0r
C++/Haskell
 Аватар для ct0r
1549 / 568 / 39
Регистрация: 19.08.2012
Сообщений: 1,174
Завершенные тесты: 1
09.11.2013, 22:20     клас птиц #16
Цитата Сообщение от Крюгер Посмотреть сообщение
тестить времени нет , а так бы все прелести рассмотрел бы
Не надо тестить, лучше просто посмотри, как надо код писать, чтобы другим читать было приятно.

lemegeton,
1) name в списке инициализации, как я понимаю, просто как дополнительная информация о данных-членах класса?
2) мне кажется, что из getName безопаснее возвращать по значению. Разницы в производительности не будет, за исключением, когда в клиентском коде мы будем работать с ссылками, а как раз в этом случае по неосторожности можно нарваться на нехороший баг и потерять кучу времени. Не замечание, а просто информация к размышлению для всех.
lemegeton
 Аватар для lemegeton
2909 / 1338 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
10.11.2013, 00:38     клас птиц #17
Цитата Сообщение от ct0r Посмотреть сообщение
мне кажется, что из getName безопаснее возвращать по значению.
За снятие константности можно и орден получить. Еще на этапе ревью. Или про какой вы баг?

Цитата Сообщение от ct0r Посмотреть сообщение
Разницы в производительности не будет, за исключением, когда в клиентском коде мы будем работать с ссылками
Ну а собственно, зачем еще ссылки?

Цитата Сообщение от ct0r Посмотреть сообщение
как раз в этом случае по неосторожности можно нарваться на нехороший баг и потерять кучу времени
Хотелось бы узнать, про какой баг идет речь?
ct0r
C++/Haskell
 Аватар для ct0r
1549 / 568 / 39
Регистрация: 19.08.2012
Сообщений: 1,174
Завершенные тесты: 1
10.11.2013, 01:06     клас птиц #18
Цитата Сообщение от lemegeton Посмотреть сообщение
За снятие константности можно и орден получить. Еще на этапе ревью.
Причем тут константность? И причем тут ревью? А в общем случае можно получить и за добавление, если имеем дело с семантикой перемещения.

Цитата Сообщение от lemegeton Посмотреть сообщение
Ну а собственно, зачем еще ссылки?
А в чем собственно, смысл этого вопроса?

Цитата Сообщение от lemegeton Посмотреть сообщение
Хотелось бы узнать, про какой баг идет речь?
Висячая ссылка после уничтожения объекта. Иногда можно банально это просмотреть.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.11.2013, 09:13     клас птиц
Еще ссылки по теме:

переделать клас C++
C++ клас Letter, клас Person
C++ клас myDate

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

Или воспользуйтесь поиском по форуму:
Крюгер
 Аватар для Крюгер
0 / 60 / 3
Регистрация: 16.11.2012
Сообщений: 409
Записей в блоге: 3
10.11.2013, 09:13     клас птиц #19
Цитата Сообщение от ct0r Посмотреть сообщение
Сообщение от Крюгер
тестить времени нет , а так бы все прелести рассмотрел бы
Не надо тестить, лучше просто посмотри, как надо код писать, чтобы другим читать было приятно.

Не по теме:

извините в этом коде нет ничего примечательного для изучения

Yandex
Объявления
10.11.2013, 09:13     клас птиц
Ответ Создать тему
Опции темы

Текущее время: 14:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru