2011-06-20 14 views
10

मैंने कहीं कुछ टिप्पणी देखकर किक्या सख्त उपयोग करने से पहले चेतावनियों का उपयोग करने का कोई कारण है?

use warnings; 
use strict; 

बेहतर था (बजाय strict पहले use'ing, जैसा कि मैंने अभ्यस्त करने के लिए किया गया था) याद है। क्या मेरी याददाश्त सही है? क्या आदेश मायने रखता है और, अगर ऐसा होता है, तो किस तरह से?

+17

एक बार मैंने इस लड़के को कूदने के बारे में एक पुल पर देखा। मैंने कहा, "यह मत करो!" उसने कहा, "मैं अब और नहीं रहना चाहता हूं।" मैंने कहा, "आप एक जीवित रहने के लिए क्या करते हैं?" उन्होंने कहा, "मैं सॉफ्टवेयर विकसित करता हूं।" मैंने कहा, "मैं भी! डेस्कटॉप या वेब?" उसने कहा, "वेब।" मैंने कहा, "मैं भी! फ्रंट एंड या बैक एंड?" उसने कहा, "बैक एंड"। मैंने कहा, "मैं भी! पर्ल या जावा?" उसने कहा, "पर्ल।" मैंने कहा, "मैं भी! पुराना स्कूल या आधुनिक आंदोलन का पालन करना?" उन्होंने कहा, "आधुनिक पर्ल।" मैंने कहा, "मैं भी! बॉयलरप्लेट या इसके विपरीत में सख्त होने से पहले चेतावनी?" उन्होंने कहा, "चेतावनी पहले।" मैंने कहा, "मरो, विचित्र!" और मैंने उसे धक्का दिया। – daxim

+0

http://en.wikiquote.org/wiki/Emo_Philips से चित्रित – daxim

+3

पर्ल :: गंभीर शिकायतें, या कम से कम उपयोग की जाती हैं, अगर आप पहले चेतावनी नहीं देते हैं। यह वह जगह हो सकती है जहां आपने इंप्रेशन उठाया था। – Ashley

उत्तर

6

मैं नहीं देख सकता कि आदेश महत्वपूर्ण होने के लिए कोई तकनीकी कारण क्यों है। मैं हमेशा use strict डालता हूं जैसा कि ऐसा होता है लेकिन किसी भी कारण से मैंने हमेशा ऐसा नहीं किया है!

+0

मैं किसी भी तरह से किसी के द्वारा किसी टिप्पणी की इस नाराज स्मृति को भरोसा नहीं कर सकता, इसलिए मैं इसे एक बार और सभी के लिए आराम देना चाहता हूं ;-) –

3

सरल: यदि आप करते हैं तो 10 करने से पहले, यदि आप use strict गलत उपयोग कर रहे हैं तो आपको चेतावनी नहीं मिलेगी। ओह!

असल में, मैंने हमेशा इसे दूसरी तरफ किया है। मेरे अंदर गुदा गुस्से में मुझे दो प्रागमाओं को वर्णानुक्रम में डाल दिया। मुझे कभी नहीं पता था कि इसे एक या दूसरे तरीके से करने का कोई कारण था।

हेक, perldoc useuse warnings से पहले दिखाता है, और यही मैंने अधिकांश आधिकारिक पर्ल उदाहरणों में देखा है।

मुझे संदेह है कि सांस्कृतिक कारण है। पर्ल में मूल रूप से, चेतावनी उपयोग करने के लिए, आप अपने कार्यक्रम की पहली पंक्ति पर

#! /usr/bin/perl -W 

उपयोग करने के लिए इस्तेमाल करते हैं। use strict प्रगामा बाद में आया, और बाद में केवल use warnings एक प्रज्ञा थी।

#! /usr/bin/perl 

use warnings; 
use strict; 

बातें मुझे पसंद है में से एक:

#! /usr/bin/perl -W 

use strict; 

-W पैरामीटर फैशन से बाहर गिर गया है, तो आप बस सही कुटिया नीचे use warnings कहा: इस प्रकार, (थोड़ी देर के लिए) कार्यक्रमों के रूप में लिखा गया था स्टैक ओवरफ्लो के बारे में यह है कि आप उन नई चीजों को सीख सकते हैं जिन्हें आप पहले कभी नहीं जानते थे। मुझे यह देखना अच्छा लगेगा कि किसी के पास वास्तविक कारण है कि यह एक तरीका क्यों होना चाहिए और दूसरा नहीं।

3

मैंने सोचा, शायद, पर्ल 5.8.9 और पुराने पर जहां strict चेतावनी नहीं देता है जब use Strict असंवेदनशील फ़ाइल सिस्टम के मामले में warnings पहले मदद करेगा। मैंने अपने विंडोज एक्सपी सिस्टम पर 5.8.9 बनाया और यह नहीं:

C:\Temp> cat t.pl 
use warnings; 
use Strict; 

C:\Temp> c:\opt\perl-5.8.9\bin\perl.exe t.pl 

C:\Temp> 

वह अंधेरे में एक शॉट था। मुझे निष्कर्ष निकाला गया है कि जब तक कोई हस्तक्षेप नहीं होता है, तो आदेश असमान होता है।

संबंधित मुद्दे

 संबंधित मुद्दे