Domanda

Questa domanda probabilmente si applicherebbe allo stesso modo anche ad altri linguaggi con commenti su più righe simili a C.Ecco il problema che sto riscontrando.Sto lavorando con il codice Java in Eclipse e volevo commentare un blocco di codice.Tuttavia, esiste una stringa che contiene la sequenza di caratteri "*/" ed Eclipse pensa che il commento dovrebbe finire lì, anche se è all'interno di una stringa.Mi dà tonnellate di errori e non riesce a costruire.

/*
   ... some Java code ...
   ... "... */ ..." ...
   ... more Java code ...
*/

La specifica Java corrisponde all'interpretazione di Eclipse del mio commento su più righe?Mi piacerebbe pensare che Java e/o Eclipse spiegherebbero questo genere di cose.

È stato utile?

Soluzione

Eclissi è corretto.Non esiste un contesto interpretativo all'interno di un commento (nessuna fuga, ecc.).Vedere JLS §3.7.

Altri suggerimenti

In Eclipse puoi evidenziare la parte del codice sorgente che desideri commentare e utilizzare Ctrl+/ per commentare su una sola riga ogni riga nella sezione evidenziata: inserisce un "//" all'inizio delle righe.

Oppure, se vuoi veramente bloccare la selezione, usa la combinazione Ctrl+Shift+/.Rileverà i commenti di blocco nella tua selezione.Tuttavia, annullare ciò è più difficile dei commenti a riga singola.

Sì, sto commentando il codice solo per fare un rapido test.Ho già testato ciò di cui avevo bisogno commentando il codice in un altro modo;Ero solo curioso di sapere quella che sembra essere una strana funzionalità errata di Java e/o Eclipse.

Un semplice test mostra che Eclipse è corretto:

public class Test {
  public static final void main(String[] args) throws Exception {
    String s = "This is the original string.";
    /* This is commented out.
    s = "This is the end of a comment: */ ";
    */
    System.out.println(s);
  }
}

Questo non riesce a compilare con:

Test.java:5: unclosed string literal
    s = "This is the end of a comment: */ ";

Potrebbe essere utile fare semplicemente un commento su più righe "batch" in modo che commenti ogni riga con "//".È Ctrl+"/" in Idea per commentare e rimuovere il commento dalle righe selezionate, Eclipse dovrebbe avere una funzionalità simile.

Spesso uso solo // per i commenti in linea e utilizzare /* */ solo per commentare blocchi di grandi dimensioni come hai fatto tu.

Molti sviluppatori useranno ancora /* */ per i commenti in linea, perché è ciò con cui hanno familiarità, ma tutti incontrano problemi come questo, in C non aveva molta importanza perché potresti #if 0 the roba via.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top