►Включение всех предупреждений и сообщений об ошибках...331

We use cookies. Read the Privacy and Cookie Policy

Синтаксис С++ позволяет проверять всё и вся. Когда компилятор встречается с конструкцией, которую он не может понять, у него не остаётся никакого выбора, кроме генерации сообщения об ошибке. И хотя компилятор честно пытается перейти к следующей строке, он даже не сочтёт нужным создать выполняемую программу.

Выключение сообщений об ошибках и предупреждений подобно отключению красных габаритных огней на вашей машине, потому что они вас раздражают. Игнорирование проблемы не заставит её исчезнуть. Если ваш компилятор имеет режим абсолютной проверки кода, включите его. И Visual С++ .NET, и Dev-C++ предоставляют режим "Включить все сообщения" ( Enable All Messages ), который должен постоянно находиться в рабочем состоянии. В конце концов эта многословность сбережёт ваше время.

Рассматривая ваш исходный код, умный компилятор С++ помимо ошибок ищет всякие подозрительные конструкции. Вот пример:

    #include "student.h"

    #include "class.h"

    Student* addNewStudent ( Class class , char *pName ,

                                        SSNumber ss )

    {

        Student pS ;

        if( pName != 0 )

        {

            pS = new Student( pName , ss ) ;

            class.addStudent( pS ) ;

        }

        return pS ;

    } 

Умный компилятор понимает, что если pName равно 0 , то переменная pS никогда не будет проинициализирована; он выводит сообщение об этом и обращает ваше внимание, что было бы неплохо взглянуть на эту проблему ещё раз.