Как может я устанавливать использование значений по умолчанию Getopt:: Станд.?

Можно посмотреть на план выполнения запроса и определить то, что он на самом деле пытается сделать. Я думаю, что механизм запроса SQL Server, как предполагается, делает этот тип сканирования и разумно переведет его в операции. Как, если Вы делаете "дорогой-op И ложный", это быстро оценит ко лжи.

Из того, что я учился, что Вы вводите, (и может быть), отличающийся от того, что на самом деле выполняется. Вы просто говорите сервер, какие результаты Вы ожидаете. Как это добирается, ответ не коррелирует слева направо кода, который Вы предоставляете.

10
задан Sinan Ünür 22 October 2009 в 18:48
поделиться

2 ответа

#/usr/bin/perl

use strict;
use warnings;

use Getopt::Std;

getopts('i:o:p:');
our($opt_i, $opt_o, $opt_p);

my $inputfile = $opt_i;
my $outputfile = $opt_o;
my $parameter_value = $opt_p || "20";

print "$_\n" for $inputfile, $outputfile, $parameter_value;
C:\Temp> ks -iinput -ooutput -p55
input
output
55
C:\Temp> ks -iinput -ooutput
input
output
20
16
ответ дан 3 December 2019 в 14:25
поделиться

The best thing is to use GetOpt::Long and use a hash instead of individual variables. Затем вы можете передать значения по умолчанию, предварительно заполнив массив

    use Getopt::Long;
    my %opts = (parameter => 20);
    GetOptions( \%opts, 
            'p|parameter=i', 
            'o|outputfile=s',
            'i|inputfile=s'
    ) or die "Invalid parameters!";

    # I didn't bother cloning STANDARD_HELP_VERSION = 1;
17
ответ дан 3 December 2019 в 14:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: