2009-06-04 8 views
8

Mi chiedevo se esiste un equivalente alle #regions di Visual Studio in RAD Studio.#region equivalente in C++ Builder? Modo simile al codice di gruppo?

Utilizziamo gli IDE di build Delphi e C++ in cui lavoro e mi piacerebbe poter utilizzare qualcosa di simile alle regioni.

I miei colleghi e io non abbiamo ancora trovato un modo equivalente di raggruppare il codice ... ne conosci qualcuno?

risposta

20

È possibile applicare una direttiva speciale {$ REGION 'Nome area'} per contrassegnare un "nome" aree comprimibili nell'editor di codice.

Per contrassegnare il codice come area, circondarlo con le direttive REGION e ENDREGION. È possibile includere una didascalia che verrà visualizzata quando il codice è piegato e nascosto.

Ecco un exampe delle due regioni (nidificate):

{$REGION 'Iterate Panels'} 
for j := 0 to StatusBar1.Panels.Count - 1 do 
begin 
    x := x + StatusBar1.Panels[j].Width; 
    {$REGION 'Inner if Region'} 
    if mpt.X < x then 
    begin 
    panel := j; 
    Break; 
    end; 
    {$ENDREGION} 
end; 
{$ENDREGION} 

Per aprano o una regione, fare clic sul [+] (se espanso) o [-] (se è crollato) marcatore a sinistra per la direttiva $ region. Questo avrà un aspetto:

alt text http://z.about.com/d/delphi/1/G/o/a/coderegions.gif

+0

Questo è esattamente quello che stavo cercando. Grazie mille. – stevosaurus

+0

FYI, credo che questo sia stato introdotto in Delphi 2005. –

5

per C++ Builder, utilizzare

#pragma region [name]
e
#pragma end_region
, come descritto nella documentation.

+1

C'è comunque una cosa, almeno quando si usa C++ Builder, l'IDE non ricorda quali regioni hai piegato, e ha una brutta tendenza a dispiegarle ogni volta che modifichi le altre parti del documento. Quindi, ogni volta che apri il file devi piegare di nuovo le regioni, se questo è ciò che desideri. –

+0

Sì, è abbastanza fastidioso, e penso che sia un bug. Per classi/funzioni piegate, questo problema è stato risolto in C++ Builder 2010, ma non ancora per la regione #pragma ... –

+0

L'aggiornamento C++ Builder 2010 4/5 lo risolve anche per la regione #pragma. –

4

In aggiunta alla risposta di eKek0 si noti che (almeno in d2009) è possibile selezionare le linee di codice che si desidera inserire in una regione, fare clic con il tasto destro e scegliere Surround | Regione. Ti verrà richiesto il nome della regione.

Problemi correlati