2009-06-04 1 views
8

Мне было интересно, есть ли эквивалент #области Visual Studio в RAD Studio.#облачный эквивалент в C++ Builder? Аналогично групповому коду?

Мы используем IDE среды Delphi и C++, где я работаю, и я хотел бы использовать что-то вроде регионов.

Мои коллеги и мне еще предстоит найти эквивалентный способ группировки кода ... знаете ли вы о каком-либо?

ответ

20

Вы можете применить специальную {$ REGION 'Region Name'} директиву для маркировки «названных» разборчивых областей в редакторе кода.

Чтобы маркировать код как регион, окружайте его директивами REGION и ENDREGION. Вы можете включить заголовок, который будет отображаться, когда код будет сложен и скрыт.

Вот exampe из двух (вложенных друг в друга) областей:

{$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} 

Чтобы сложить или развернуть область, нажмите на [+] (если развернут) или [-] (если разрушилась) маркер слева директива $ region. Это будет выглядеть:

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

+0

Это именно то, что я искал. Большое спасибо. – stevosaurus

+0

FYI, я считаю, что это было введено в Delphi 2005. –

5

Для C++ Builder, используйте

#pragma region [name]
и
#pragma end_region
, как описано в documentation.

+1

Есть, однако, вещь, по крайней мере, при использовании C++ Builder, IDE не помнит, какие регионы вы складывали, и имеет неприятную тенденцию разворачивать их, когда вы редактируете другие части документа. Поэтому каждый раз, когда вы открываете файл, вам нужно снова складывать регионы, если это то, что вы хотите. –

+0

Да, это очень раздражает, и я думаю, что это ошибка. Для сложенных классов/функций это было исправлено в C++ Builder 2010, но еще не для области #pragma ... –

+0

C++ Builder 2010 Update 4/5 исправляет это для области #pragma. –

4

В дополнение к ответу eKek0 обратите внимание, что (по крайней мере, в d2009) вы можете выбрать строки кода, которые хотите поместить в область, щелкните правой кнопкой мыши и выберите Surround | Область. Вам будет предложено указать название региона.

Смежные вопросы