নিম্নলিখিত কোডের অ-স্বাক্ষরিত স্থানীয় ভেরিয়েবল "সংখ্যাঅফগ্রুপ" ব্যবহারের ফলাফল :
int numberOfGroups;
if(options.NumberOfGroups == null || !int.TryParse(options.NumberOfGroups, out numberOfGroups))
{
numberOfGroups = 10;
}
তবে, এই কোডটি ঠিকঠাকভাবে কাজ করে (যদিও, রিশার্পার বলছেন এটি = 10
অপ্রয়োজনীয়):
int numberOfGroups = 10;
if(options.NumberOfGroups == null || !int.TryParse(options.NumberOfGroups, out numberOfGroups))
{
numberOfGroups = 10;
}
আমি কি কিছু মিস করছি, বা সংকলকটি আমার পছন্দ করছে না ||
?
আমি এগুলি সমস্যার dynamic
কারণে সংকুচিত করেছি ( options
আমার উপরের কোডটিতে একটি গতিশীল পরিবর্তনশীল ছিল)। প্রশ্নটি এখনও রয়ে গেছে, আমি কেন এটি করতে পারি না ?
এই কোডটি সংকলন করে না :
internal class Program
{
#region Static Methods
private static void Main(string[] args)
{
dynamic myString = args[0];
int myInt;
if(myString == null || !int.TryParse(myString, out myInt))
{
myInt = 10;
}
Console.WriteLine(myInt);
}
#endregion
}
তবে এই কোডটি করে :
internal class Program
{
#region Static Methods
private static void Main(string[] args)
{
var myString = args[0]; // var would be string
int myInt;
if(myString == null || !int.TryParse(myString, out myInt))
{
myInt = 10;
}
Console.WriteLine(myInt);
}
#endregion
}
আমি বুঝতে পারি নি dynamic
যে এটির একটি কারণ হবে।
out