iT邦幫忙

0

C# 大括號語法問題

c#
  • 分享至 

  • xImage

請問各位大大,我在程式碼裡看到了一段用了大括號括起來的程式,以下是我簡單Demo的範例,不懂這括號括起來的作用或用意是什麼?沒有括號也能照流程跑不是嗎?
不知道是否有人知道這樣寫法的作用?

public class Program
{
    public static void Main(string[] args)
    {
        Func<Double, Double> cpointer = r => 3.12 * r * r;
        double area = cpointer(20);
        Console.Write(area);
        
        //這裡的大括號為什麼要這樣寫?????
        {
          //dosomething...  for example
            Console.WriteLine("123");
            Console.WriteLine("abc");
        }
    }
}
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
2
glj8989332
iT邦研究生 4 級 ‧ 2021-06-26 11:01:49
最佳解答

你的案例看不出使用{}差異, 而用這範例解釋:

class Program
{
	static void Main(string[] args)
	{
		{
			string a = "qq";
			Console.WriteLine(a);
		}

		{
			string a = "xx";
			Console.WriteLine(a);
		}

	}
}

{} 會讓變數的作用域(Scope)規範在這裡面. 所以這範例的兩大{}裡的a變數是互相不干擾.

leo226 iT邦新手 4 級 ‧ 2021-06-26 16:31:06 檢舉

懂了,感謝G大指教~

0
海綿寶寶
iT邦大神 1 級 ‧ 2021-06-26 10:56:44

我在程式碼裡看到了一段用了大括號括起來的程式,以下是我簡單Demo的範例

所以這段不是原始的程式,是你寫的 Demo 的範例

不懂這括號括起來的作用或用意是什麼?

用意要問寫程式的人

沒有括號也能照流程跑不是嗎?

不知道是否有人知道這樣寫法的作用?

語法上沒有問題
作用上還是要問原程式作者

leo226 iT邦新手 4 級 ‧ 2021-06-26 11:05:12 檢舉

是我自己寫的 Demo 的範例,但離原本那段程式碼的內容大意上應該也相差不遠了~

但離原本那段程式碼的內容大意上應該也相差不遠了

既是如此
你自己就知道這段程式的大意/用意了

0
小魚
iT邦大師 1 級 ‧ 2021-06-26 11:00:27

把大括號拿掉,
執行結果有不一樣嗎?

leo226 iT邦新手 4 級 ‧ 2021-06-26 11:03:36 檢舉

在我自己寫的這段小測試,執行結果是一樣的,在專案上的感覺起來應該也會一樣,只是沒試過就不確定~因為專案的流程有點複雜就沒有測了~

小魚 iT邦大師 1 級 ‧ 2021-06-26 11:07:49 檢舉

可能如g大所說,
當作封閉區域吧,
只是我沒這樣子寫過.

我要發表回答

立即登入回答