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

Что Вы можете сказать о индусе по его коду - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Компилатор, ошибка "expected primary-expression before "int" " http://www.cyberforum.ru/cpp-beginners/thread626260.html
код #include <iostream.h> using namespace std; #include <windows.h> int show_big_and_litle(int a, int b, int c) { int small=a; int big=a;
C++ Можно ли так вызвать метод? Всем доброго времени суток! Вот такая ситуация. class A { void fun(); }; class B { http://www.cyberforum.ru/cpp-beginners/thread626203.html
Зажатие клавиши C++
Как сделать, что-бы, если зажата клавиша, то выполняется какое-то действие?
Обработка файла C++
Собственно есть текстовый файл со сложной внутренней структурой наподобие xml необходимо его обработать и на основе информации содержащейся в нем создать объекты. Так вот вопрос, как его обработать с наименьшими энергозатратами ? Ну то бишь быстрее и удобнее. Предполагаю 2 варианта, 1)обработка на лету, 2) загнать содержимое файла в одну строку и обрабатывать ее с помощью вспомогательной. Что...
C++ Запустить Opera http://www.cyberforum.ru/cpp-beginners/thread626150.html
всем привет! помогите с задачкой на с++. нужно считать число с *.txt файла, потом сравнить ее с другим числом, если условие верно, то запускается exe-ник, если не верно, то ничего не происходит. например, в блокноте число 5,она считывается,потом 5 сравнивается с числом 15, если условие верно , запускается C:\Program Files\Opera.ехе, если не верно условие - ничего не происходит. ...
C++ Нужно найти максимальные и минимальные числа в массиве, причём кол-во массивов задаётся пользователем #include <iostream.h> int main () { int a, n; cin>>n; for (int i=0; i<n;i++) cin >> a; for (i=0;i<n;i++) подробнее

Показать сообщение отдельно
fasked
Эксперт C++
 Аватар для fasked
4925 / 2505 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
20.07.2012, 11:00     Что Вы можете сказать о индусе по его коду
tramp13, несколько рекомендаций.
  1. Не используйте using namespace. Со временем сами поймете "почему", сейчас просто не используйте.
  2. Я совершенно не могу понять предназначение структуры по ее имени "use". Для сущностей рекомендуется все таки использовать существительные в названиях, а не глаголы. Глаголы больше подойдут для функций и методов.
  3. Тоже самое об именах членов структур. "call_pa" - вместо того, чтобы писать комментарий к названию, лучше сразу дать члену нормальное имя. Если пакет бесплатных минут, то можно было бы попробовать, например, "free_minutes".
  4. Некоторые имена лучше просто не использовать, например имя free - функция стандартной библиотеки, у Вас это имя используется (25 строка). Т.е. могут возникнуть конфликты и, как следствие, трудно-понимаемые ошибки.
  5. Указатели это, конечно, хорошо. Но в C++ лучше использовать ссылки.
  6. Не инициализированные переменные (27 строка) согласно стандарту C++ это Undefined Behaviour (Неопределенное поведение). Стандарт языка не гарантирует корректности выполнения программы в таких случаях.
  7. Форматирование кода в целом не очень радует глаз. Старайтесь разделять логические участки кода пустыми строками.
  8. Комментарии "Заполнение" и "Вычисление" полностью бесполезны. Это и так видно по названию функций. Комментарии не должны дублировать код.
  9. Опять же по стилю. Если Вы выделяете фигурными скобками блок "if", то лучше всего выделить скобками блок "else". И наоборот.
  10. Отсутствуют проверки указателей в функциях на валидность. Всегда сравнивайте указатели с NULL.
  11. Строки 83-85 трудны для восприятия. Лучше их выделить в отдельную функцию.
  12. В этих же строках присутствуют т.н. "магические числа" 100 и 31. Что они означают догадаться сложно.
  13. Опять же в этих строках стоят бесполезные комментарии. Если разбить эти три строки на функции и дать говорящие имена, то необходимость в этих комментариях отпадет. Вообще старайтесь писать код так, чтобы его можно было понять без каких-либо комментариев.

    И еще одно чисто мое субъективное мнение. Я не очень ценю С. Прата как автора книг по программированию, поэтому советую присмотреться к другой литературе.
 
Текущее время: 15:22. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru