Netbeans 7.2 mostra “Imansible risolvere l’identificatore”, sebbene la compilazione abbia esito positivo

Sto usando l’ IDE 7.2 di Netbeans con il plugin C / C ++ (ultima versione 1.18.1.1) e se costruisco il mio progetto tutto va bene ma l’IDE mi mostra errori (ad esempio, incapace di risolvere l’identificatore …)

Qualcun altro ha questo bug e come posso risolverlo?

Ecco un estratto dalla mia risposta ad un’altra domanda.

Identificatore non risolto

Se la fonte del file .cpp ha questo aspetto

inserisci la descrizione dell'immagine qui

Clicca con il tasto destro del mouse sul tuo progetto.
Controlla C/C++ Code As...
Esegui Reparse Project.

inserisci la descrizione dell'immagine qui

Se questo non è abbastanza.
Vai a Project Properties
Compila il campo di inserimento Include come descritto.

inserisci la descrizione dell'immagine qui

Imposta il percorso di inclusione corretto.

Spero che possa aiutarti.

TL; DR

Anche UTF-8 WITH BOM può causare problemi.

PROBLEMA

Ho appena avuto lo stesso problema, e ho provato molte soluzioni possibili, ma nessuna ha funzionato, fino a quando non ho scoperto la fonte del problema, che era un po ‘strano. So che questa domanda ha già avuto risposta, ma scrivo la mia soluzione, forse risolverà il problema di qualcun altro che soffre dello stesso problema.

Ad esempio, ho ottenuto “Imansible risolvere il vettore dell’identificatore” quando definivo struct Vector , mentre era corretto:

Impossibile risolvere il vettore dell'identificatore

Ho ricevuto molti errori simili a questo quando dichiaro / definisco funzioni, ecc. Inoltre, la mia assistenza sul codice non ha funzionato a causa della quantità di errori.

SOLUZIONE

  1. Ho aperto il file .cpp in Notepad ++ e ho visto che il file era codificato in UTF-8 regolare, il che significa che il file inizia con il carattere del segno di ordinamento dei byte (BOM) :

    Notepad ++ - file codificato in UTF-8 WITH BOM

  2. Così ho fatto clic su CodificaConverti in UTF-8 senza BOM :

    Notepad ++: Codifica - Converti in UTF-8 senza BOM

    Nota: NON passare semplicemente a “Codifica in UTF-8 senza BOM” , perché può rovinare alcuni caratteri speciali (es. Caratteri contenenti accenti, ecc.). Quindi convertilo .

  3. Salvare

  4. Problema andato: nessun errore segnalato più in NetBeans:

    NetBeans - nessun errore segnalato più, problema risolto

    Spero che possa risparmiare un po ‘di tempo anche per qualcun altro.

Ho avuto lo stesso problema, ma ho riconosciuto che appare dopo aver modificato proprietà-> c ++ compiler -> Compilation Line -> opzioni aggiuntive per -std = c ++ 11. se si modificano le impostazioni predefinite, l’errore “imansible risolvere l’identificatore” scompare.

Recentemente ho avuto questo errore con netbeans 8.0.2 su OS X, e non sono riuscito a trovare una risposta su cosa fare.

Ho risolto il problema disinstallando il plug-in C / C ++, quando ho riaperto netbeans mi ha spinto a ‘risolvere il codice di assistenza ..’.

Facendo clic sul prompt e lasciandolo eseguire il problema è stato corretto.

Sto usando NetBeans 8.1 e lo stesso problema è comparso quando ho avviato un nuovo progetto C ++. Si è risolto da solo dopo aver eseguito il progetto tramite il debugger.

Sviluppiamo il nostro codice su un computer e lo compiliamo su un altro. Stavo ottenendo questi markup distraenti fino a quando non “imposto Build Host” sulla macchina remota (nel menu del tasto destro del mouse per il progetto).

Non sono ancora sicuro di quale fosse il problema sul computer di sviluppo, dal momento che gli identificatori non risolti erano elementi della libreria standard ( size_t , std::vector ecc.) E le risposte non sembravano essere di aiuto.

Devo sempre reinstallare MPLAB X quando questo accade. Altre cose funzionano di volta in volta, ma funziona sempre.

Ho spesso questo errore e, come altri hanno già detto, di solito aggiungo carattere allo spazio, salvo il file, rimuovi il carattere dello spazio … e tutti gli identificatori sono risolti.

Questa volta non ha funzionato. Il mio progetto, che ho compilato migliaia di volte, e ha sempre funzionato, improvvisamente si è schiantato su MPLAB X IDE v3.35 (Mac OSX, ma probabilmente non importa), mentre scrivevo il testo. Dopo questo ho solo un file e solo una struttura, tutti gli identificatori non risolti.

La struttura nel file profile.h era:

 typedef struct { int state; ///< state machine current state int enabled; ///< machine can be ENABLED or DISABLED int flag; ///< to initiate profile execution ... many variables here ... unsigned long timestamp; ///< variable used for local timing } profile_struct; 

Nel mio file profile.c qualsiasi variabile di questa struttura è rimasta irrisolta, ma il progetto è stato compilato e ha funzionato correttamente.

Dopo un'ora frustrante di tentativi, questo ha risolto il mio problema: ho cancellato l'intera directory della cache MPLABX.

Nel mio caso, si trova in:

 /Users/USER_NAME/Library/Caches/mplab_ide/dev/v3.35/var 

(è necessario cancellare l'intera directory "var" e ovviamente sostituire USER_NAME con il proprio nome utente)

Nota che la 'Biblioteca' è una directory nascosta, ma puoi ancora accedervi se abiliti la visualizzazione di file nascosti o vai direttamente ad essa tramite terminale.

Infine, sul tuo computer potrebbe essere da qualche altra parte. Ho trovato il mio guardando, quali file sono stati modificati sul mio computer negli ultimi 2 minuti, utilizzando il comando del terminale:

 /usr/bin/find /Users/USER_NAME/ -mmin -2 –ls 

prova Fai clic con il tasto destro del mouse sul file, Proprietà-> Generale-> Escludi dall’assistenza del codice (disabilita)

Il mio ha funzionato una volta che ho rinominato il mio main.c in main.cpp.

In base all’estensione del file, cambia il comportamento di Netbeans Code Assistance