Как я могу закомментировать только часть строки в Perl? - PullRequest
14 голосов
/ 12 мая 2010

Как мне прокомментировать часть одной строки в Perl, например, следующую строку:

 if($clevel==0){#never happends}

Я бы хотел прокомментировать эту последнюю заключительную скобку, не переходя на новую строку.

Ответы [ 6 ]

12 голосов
/ 12 мая 2010

Знак # начинает комментарий, заканчивающийся концом строки.

8 голосов
/ 12 мая 2010

Если это действительно так важно, используйте фильтрацию источников.

# C_Style_Comments.pm
package C_Style_Comments;
use Filter::Simple;
FILTER {   s{/\* .* \*/}{}gmx    };
1;

$ perl -MC_Style_Comments -e 'print /* 5, No wait, I mean */ 3'
3
7 голосов
/ 12 мая 2010

Любая причина, по которой вы не можете написать:

if($clevel==0){#never happends}

как:

if($clevel==0){} #never happens

Есть несколько уловок, которые вы можете сделать, чтобы скрыть сообщения, например:

0 and 'some comment'

Но вы просто запутаете, если кому-то еще придется поддерживать ваш код в будущем.

Работа в рамках ограничений языка, а не попытка заставить его вести себя как некоторый язык, с которым вы более знакомы, часто приводит вас к изучению новых вещей. Я лично ненавижу работать в IDL, но некоторые уловки, связанные с плохой производительностью циклов, привели меня к оптимизации кода, который я с тех пор написал на других языках.

5 голосов
/ 12 мая 2010

A # и затем разрыв строки. Вы можете относиться к ним как к скобкам , поскольку в Perl мало что теряет смысл из-за того, что находится на разных строках.

my $ans = 2 + rand( 5 ) + $pixels / FUDGE_FACTOR;

К

my $ans = # 2 + 
    rand( 5 ) + $pixels # / FUDGE_FACTOR
    ;

Или от:

if ( dont_know_how_this_breaks() && defined $attribute ) { 
   #...
}

Кому:

if ( # dont_know_how_this_breaks() && 
     defined $attribute ) { 
   #...
}
2 голосов
/ 19 ноября 2017

Использовать строку в качестве встроенного комментария:

perl -lne '$a++; q#some explanation#;print;'

Встроенное комментирование необходимо для комментирования кода Perl, встроенного в Make-файлы (и сценарии Bash и сценарии Vim), как в этом вызове vimscript perl. Файл тезауруса VIM

0 голосов
/ 13 мая 2015

Часть строчного или многострочного комментария в perl:

=comment
...
...
...

=cut
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...