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

Покритикуйте пожалуйста программу - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Поиск элемента в списке. http://www.cyberforum.ru/cpp-beginners/thread362908.html
Есть список, который содержит объекты класа type. Мне нужно найти в этом списке объект, который будет отвечать некоторым условиям. Пробую реализовать это с помощью рекурсии type GetUnit(std::list<type*> List, std::list<type*>::iterator itr) { if ((*itr)) { if <условие> return itr; if (itr != List.end()) {
C++ Предварительное объявление Добрый вечер, Есть файл file.h и file.cpp, в file.cpp я делаю подключение #include <boost/signal.hpp>, не подключаю в хэдер file.h умышленно, потому что этот хэдер подключается в много других файлов, проблема состоит в том чтобы в file.h объявить указатель на сигнал Signal *errorSignal; пробовал сделать предварительное объявление в file.h так: namespace boost { class signal<void... http://www.cyberforum.ru/cpp-beginners/thread362902.html
C++ Введите с клавиатуры данные о температуре воздуха за месяц. Определите, сколько раз за месяц была самая низкая температура?
Собственно, проходим циклы, возникли проблемы с этой задачей. Нуждаюсь в вашей помощи.
getline C++
Я считываю число из входного потока, но дальше из входного потока уже не могу считать строку. Его надо очищать что ли? #include <stdafx.h> #include <iostream> #include <locale.h> #include <string> using namespace std; int main()
C++ С чего начать программирование? http://www.cyberforum.ru/cpp-beginners/thread362877.html
Не нашёл тему, уж извините. Проблема в том, что: Я не знаю программирования. Впринципе. Мне посоветовали С++. Как думаете? Стоит ли начинать именно с него или с чего то другого?
C++ Быстрое чтение и запись файлов Вопрос такой: имеется файл input.txt следующего вида: 5 12 6 7 44 2 1 2 3 4 5 2 343 634 54 1 123 2 345 56 56 11111 2222 333 44 5 подробнее

Показать сообщение отдельно
aeshes
440 / 203 / 13
Регистрация: 07.10.2011
Сообщений: 462
09.10.2011, 01:44     Покритикуйте пожалуйста программу
1) оператор присваивания не может быть void. Он должен возвращать ссылку на объект, для которого вызван
C++
1
2
3
4
5
const Student& Student::operator=(const Student& z)
{
...
return *this;
}
2) вот эта конструкция мне не нравится
C++
1
s[index](name, surname, patronymic, date, adress, stip);
Или сделать общий метод set, который принимает все эти параметры
C++
1
s[index].set(name, surname, patronymic, date, adress, stip);
или так
C++
1
s[index]=Student(name, surname, patronymic, date, adress, stip);
3) в конструкторе копий и в операторе= желательно очищать память, выделенную под поля объекта до этого, а только потом выделять новую
C++
1
2
3
4
5
6
7
8
9
if(name)
    delete [] name;
if(z.name)
{
    name=new char[strlen(z.name)+1];
    strcpy(name,z.name);
}
else
    name=0;
4) в присваивании можно сделать проверку на самоприсваивание
C++
1
 if(&z==this) return *this;
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru