পোশকোড, http://poshcode.org/3226- তে একটি গেট-ওয়েব ফাইল স্ক্রিপ্টের দিকে তাকিয়ে আমি লক্ষ্য করেছি যে আমার কাছে এই অদ্ভুত- বিপরীত প্রতিচ্ছবি রয়েছে :
$URL_Format_Error = [string]"..."
Write-Error $URL_Format_Error
return
নীচের বিপরীতে এর কারণ কী?
$URL_Format_Error = [string]"..."
Throw $URL_Format_Error
বা আরও ভাল:
$URL_Format_Error = New-Object System.FormatException "..."
Throw $URL_Format_Error
আমি যেমন বুঝতে পেরেছি, আপনার অ-সমাপ্তি ত্রুটির জন্য লিখন-ত্রুটি ব্যবহার করা উচিত, এবং ত্রুটিগুলি বন্ধ করার জন্য থ্রো করা উচিত, সুতরাং আমার কাছে মনে হয় যে আপনি রিটার্নের পরে রাইট-ত্রুটি ব্যবহার করবেন না। পার্থক্য আছে কি?
return
কোনও (উন্নত) ফাংশনের ব্লকের কলারে ফিরে আসে নাprocess
; পরিবর্তে, এটি পাইপলাইনে পরবর্তী ইনপুট অবজেক্টে এগিয়ে যায় । প্রকৃতপক্ষে, নন-টার্মিনেট ত্রুটিগুলি উত্পন্ন করার জন্য এটি সাধারণ দৃশ্য: যদি আরও ইনপুট অবজেক্টগুলি প্রক্রিয়াকরণ করা এখনও সম্ভব হয়।
Throw
একটি উত্পন্ন স্ক্রিপ্ট -terminating ত্রুটি, যা হিসাবে একই নয় বিবৃতি আলোড়ন সৃষ্টি ত্রুটি, উদাহরণস্বরূপ -terminating দ্বারা Get-Item -NoSuchParameter
বা 1 / 0
।