ऑपरेटर ++ पर्ल में

डबल प्लस ऑपरेटर में प्रयोग किया जाता है पर्ल में वृद्धि करने के लिए एक चर के मूल्य ।

उदाहरण:

▶ Run
#!/usr/bin/perl

my $i = 100;

$i++;

print $i;

प्रोग्राम संख्या को प्रदर्शित करेगा 101.

प्रवेश फार्म

वहाँ रहे हैं दो रूपों की रिकॉर्डिंग: आप निर्दिष्ट कर सकते हैं ऑपरेटर के बाद चर (पोस्टफिक्स संकेतन) को या उससे पहले चर (उपसर्ग संकेतन):

$i++;
++$i;

यदि कमांड है पर एक पंक्ति है, वहाँ के बीच कोई अंतर नहीं उपसर्ग और पोस्टफिक्स संकेतन के. वहाँ एक अंतर है तो केवल ऑपरेटर ++ का इस्तेमाल किया जाता है के भाग के रूप में एक टीम. अगर ++ के सामने स्थित है चर चर के मूल्य में वृद्धि होगी क्रियान्वित करने से पहले शेष आदेशों. अगर ++ के बाद है चर, तो चर के मूल्य में वृद्धि होगी को क्रियान्वित करने के बाद शेष आदेशों.

यहाँ एक उदाहरण है ।

इस कार्यक्रम को प्रदर्शित करता है नंबर 100 और 101:

▶ Run
#!/usr/bin/perl

use feature qw(say);

my $i = 100;

say $i++;
say $i;

लेकिन इस कार्यक्रम को प्रदर्शित करता संख्या 101 में दो बार:

▶ Run
#!/usr/bin/perl

use feature qw(say);

my $i = 100;

say ++$i;
say $i;

++ पंक्तियों के लिए

ऑपरेटर ++ है, एक विशेष जादू है । यह कार्य करता है एक विशेष तरीका में अगर इसे लागू किया जाता है करने के लिए एक चर है जो एक स्ट्रिंग है ।

और यह दिलचस्प है कि ऑपरेटर -- तो वहाँ कोई जादू नहीं है.

उदाहरण है । इस कार्यक्रम को प्रदर्शित करेगा स्ट्रिंग a2:

▶ Run
#!/usr/bin/perl

my $str = 'a1';

$str++;

print $str;

यहाँ कुछ उदाहरण हैं जो कर देगा ऑपरेटर ++ के साथ स्ट्रिंग एक चर में:

'a' -> 'b'
'b' -> 'c'
'z' -> 'aa'
'aa' -> 'ab'
'az' -> 'ba'
'zz' -> 'aaa'

'A1' -> 'A2'
'A9' -> 'B0'

'undef' -> 'undeg'

'A+100' -> '1'

जब आप का उपयोग करें ऑपरेटर ++ के साथ तार कर रहे हैं की एक बहुत कुछ बारीकियों. यह सबसे अच्छा नहीं है को लागू करने के लिए पंक्तियों. यदि आप उपयोग के लिए पंक्ति संचालन, आप एक बहुत अच्छी समझ है की कैसे यह काम करता है या त्रुटियाँ हैं. लेकिन यह संभव है कि लोगों को है, जिसके बाद आप काम करने के लिए है इस कोड के साथ इतनी अच्छी तरह से नहीं समझ कैसे एक ++ के लिए तार और जब आप परिवर्तन करने के लिए कोड जोड़ें कीड़े ।

दुरुपयोग

ऑपरेटर ++ कर सकते हैं केवल के लिए इस्तेमाल किया जा चर. यदि आप का उपयोग करने की कोशिश ++ के लिए नहीं चर, और primes, यह उत्पन्न होगा एक त्रुटि है. यहाँ है एक उदाहरण के कोड के साथ एक त्रुटि है:

▶ Run
#!/usr/bin/perl

my $i = 100++; # error!

जब आप इस कार्यक्रम को चलाने यह त्रुटि जाएगा:

Can't modify constant item in postincrement (++) at script.pl line 3, near "100++"
Execution of script.pl aborted due to compilation errors.

इसी तरह, यह नहीं किया जा सकता लागू करने के लिए सरणियों:

▶ Run
#!/usr/bin/perl

my @arr = (1, 2, 3);

@arr++; # error
Can't modify private array in postincrement (++) at script.pl line 5, near "@arr++"
Execution of script.pl aborted due to compilation errors.

और हैश:

▶ Run
#!/usr/bin/perl

my %h = (
    a => 1,
);

%h++; # error
Can't modify private hash in postincrement (++) at script.pl line 7, near "%h++"
Execution of script.pl aborted due to compilation errors.

अन्य लेख