Ricerca…


errore: '***' non è stato dichiarato in questo ambito

Questo errore si verifica se viene utilizzato un oggetto sconosciuto.

variabili

Non compilare:

#include <iostream>

int main(int argc, char *argv[])
{
    {
        int i = 2;
    }

    std::cout << i << std::endl; // i is not in the scope of the main function

    return 0;
}

Difficoltà:

#include <iostream>

int main(int argc, char *argv[])
{
    {
        int i = 2;
        std::cout << i << std::endl;
    }

    return 0;
}

funzioni

La maggior parte delle volte questo errore si verifica se l'intestazione necessaria non è inclusa (ad esempio, usando std::cout senza #include <iostream> )

Non compilare:

#include <iostream>

int main(int argc, char *argv[])
{
    doCompile();

    return 0;
}

void doCompile()
{
    std::cout << "No!" << std::endl;
}

Difficoltà:

#include <iostream>

void doCompile(); // forward declare the function

int main(int argc, char *argv[])
{
    doCompile();

    return 0;
}

void doCompile()
{
    std::cout << "No!" << std::endl;
}

O:

#include <iostream>

void doCompile() // define the function before using it
{
    std::cout << "No!" << std::endl;
}

int main(int argc, char *argv[])
{
    doCompile();

    return 0;
}

Nota: il compilatore interpreta il codice dall'alto verso il basso (semplificazione). Tutto deve essere almeno dichiarato (o definito) prima dell'uso.

riferimento a `*** 'non definito

Questo errore del linker si verifica se il linker non riesce a trovare un simbolo utilizzato. Il più delle volte, ciò accade se una libreria usata non è collegata.

qmake:

LIBS += nameOfLib

cmake:

TARGET_LINK_LIBRARIES(target nameOfLib)

chiamata g ++:

g++ -o main main.cpp -Llibrary/dir -lnameOfLib

Si potrebbe anche dimenticare di compilare e collegare tutti i file .cpp usati (functionsModule.cpp definisce la funzione necessaria):

g++  -o binName main.o functionsModule.o

errore fatale: ***: nessun file o directory di questo tipo

Il compilatore non riesce a trovare un file (un file sorgente usa #include "someFile.hpp" ).

qmake:

INCLUDEPATH += dir/Of/File

cmake:

include_directories(dir/Of/File)

chiamata g ++:

g++ -o main main.cpp -Idir/Of/File


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow