C#中的局部變量沖突問題
一個變量在同一個作用域中不能夠聲明兩次,如下代碼錯誤。
using System;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
namespaceConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int a =123;
int a =456;
}
}
}
編譯錯誤如下:
|
嚴(yán)重性 |
代碼 |
說明 |
項目 |
文件 |
行 |
禁止顯示狀態(tài) |
|
錯誤 |
CS0128 |
已在此范圍定義了名為“a”的局部變量。 |
ConsoleApplication1 |
E:\01_workspace\02_programme_language\06_c#\2017\09\varConflict\ConsoleApplication1\ConsoleApplication1\Program.cs |
14 |
活動 |
|
警告 |
CS0219 |
變量“a”已被賦值,但從未使用過它的值 |
ConsoleApplication1 |
E:\01_workspace\02_programme_language\06_c#\2017\09\varConflict\ConsoleApplication1\ConsoleApplication1\Program.cs |
13 |
活動 |
|
警告 |
CS0219 |
變量“a”已被賦值,但從未使用過它的值 |
ConsoleApplication1 |
E:\01_workspace\02_programme_language\06_c#\2017\09\varConflict\ConsoleApplication1\ConsoleApplication1\Program.cs |
14 |
活動 |
但是,如下代碼正常:
using System;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
namespaceConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
for (int a = 0;a < 10; a++)
{
Console.WriteLine(a);
}
for (int a = 0;a < 10; a++)
{
Console.WriteLine(a* 2);
}
}
}
}
編譯后執(zhí)行結(jié)果:

原因:在第一個循環(huán)結(jié)束后,a的作用域已經(jīng)跳出。
以上這篇C#中的局部變量沖突問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
C#生成互不相同隨機(jī)數(shù)的實現(xiàn)方法
這篇文章主要介紹了C#生成互不相同隨機(jī)數(shù)的實現(xiàn)方法,文中詳細(xì)描述了C#生成互不相同隨機(jī)數(shù)的各個步驟及所用到的函數(shù),非常具有借鑒價值,需要的朋友可以參考下2014-09-09
DevExpress實現(xiàn)TreeList按條件隱藏節(jié)點(diǎn)CheckBox的方法
這篇文章主要介紹了DevExpress實現(xiàn)TreeList按條件隱藏節(jié)點(diǎn)CheckBox的方法,需要的朋友可以參考下2014-08-08
Windows下C#的GUI窗口程序中實現(xiàn)調(diào)用Google Map的實例
這篇文章主要介紹了Windows下C#的GUI窗口程序中實現(xiàn)調(diào)用Google Map的實例,如果只想調(diào)用瀏覽器打開網(wǎng)頁的話可以看文章最后的方法,需要的朋友可以參考下2016-04-04
C#連接Mysql數(shù)據(jù)庫詳細(xì)教程(內(nèi)附Mysql及Navicat)
這篇文章主要給大家介紹了C#連接Mysql數(shù)據(jù)庫詳細(xì)教程(內(nèi)附Mysql及Navicat),文中通過代碼示例和圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2023-10-10

