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

Покритикуйте код - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Что за чудо в компиляции? http://www.cyberforum.ru/cpp-beginners/thread723089.html
Компиляция проходит хорошо, но в OutPut много много мусора не понятного. Как это решить? При написании программы используется glut. И еще вопрос сразу: после компиляции запускается основное окно игры и консоль. Как сделать чтобы консоль не открывалась? 'fff.exe': Loaded 'C:\My dоcuments\Visual Studio 2010\Projects\fff\Debug\fff.exe', Symbols loaded. 'fff.exe': Loaded...
C++ составить программу нахождения произведения ряда натуральных чисел от 15 до 41 составить программу нахождения произведения ряда натуральных чисел от 15 до 41 http://www.cyberforum.ru/cpp-beginners/thread723086.html
C++ Переход от консольного программирования к графическому
Подскажите пожалуйста: я прочитал пару книг по С++, синтаксис освоил и хочу перейти с консольного программирования к программированию со всякими кнопочками, текстбоксами и т.д. Что мне надо для этого использовать? Знаком немного с VBA, там используется Windows Form, в С++ так-же? Имею в виду чистый С++, без NET.
Выбор заявок C++
Не могли бы вы помочь с задачей) написал свое решение но оно не верно. вот задача Входные данные В первой строке задано число N (1 <= N <= 100000) --- количество отрезков. Далее заданы сами отрезки парами целых чисел --- левым и правым концом. Координаты концов лежат в диапозоне от 1 до 10^9. Выходные данные Выведите количество отрезков в искомом множестве. Далее выведите сами отрезке в...
C++ Длинное произведение http://www.cyberforum.ru/cpp-beginners/thread723056.html
Даны целые неотрицательные числа M и K. Найти M*K. Ограничения: 0 ≤ M ≤ 102500, |K|≤109. Ввод из файла longprod.in. В первой строке находится число M, во второй - N. Вывод в файл longprod.out. Вывести одно число - результат умножения. Пример longprod.in longprod.out 9876543210 10108215200126352690 1023456789
C++ Сокращение кода Я учусь сокращать код на С++, для решения олемпиадных задач. (только пока еще простые задачки) Условие задачи: Сбор черники (Время: 1 сек. Память: 16 Мб Сложность: 17%) В фермерском хозяйстве в Карелии выращивают чернику. Она растет на круглой грядке, причем кусты высажены только по окружности. Таким образом, у каждого куста есть ровно два соседних. Всего на грядке растет N кустов. ... подробнее

Показать сообщение отдельно
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
07.12.2012, 21:27     Покритикуйте код
Весь код не смотрел, но первое, что бросилось в глаза
Цитата Сообщение от sysop999 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
int main(int argc, char *argv[])
{
    //...
* * NameOfOutFile = argv[3];
* * NameOfFileStructure = argv[1];
* * NameOfFileXML = argv[2];
// и только потом
if (argc != 4)
* * {
т.е. я могу запустить программу без аргументов и она может сломаться не сказав ни слова.

Добавлено через 2 минуты
почему checkPathFile() и checkPathDirectory() выводят какие-то сообщения? Подобные функции должны только проверять, что им следует и возвращать true/false. А вывод сообщений нужно поручить вызывающей функции.

Добавлено через 4 минуты
в main() слишком много несвязной логики, немешало бы разбить все это на отдельные функции, или сделать классы с соответствующими методами.

Добавлено через 1 минуту
И что за "Current Direcory"? Везде, где это используется, нужно придумать как сделать по другому. Каких-то "левых" строковых констант не должно быть. (хотя вроде об этом уже писали)
Дальше писать уже лень, просто в целом по коду видно, что опыта нехватает, поэтому можно еще долго к коду цепляться.
 
Текущее время: 16:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru