成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

探究C編程中靜態(tài)和非靜態(tài)的差異

在C編程中,靜態(tài)(static)和非靜態(tài)的概念是我們需要深入理解的。簡(jiǎn)單來說,靜態(tài)就是使用了static關(guān)鍵字修飾的成員,而非靜態(tài)則相反,沒有使用static修飾。創(chuàng)建C控制臺(tái)項(xiàng)目首先打開VS2015

在C編程中,靜態(tài)(static)和非靜態(tài)的概念是我們需要深入理解的。簡(jiǎn)單來說,靜態(tài)就是使用了static關(guān)鍵字修飾的成員,而非靜態(tài)則相反,沒有使用static修飾。

創(chuàng)建C控制臺(tái)項(xiàng)目

首先打開VS2015開發(fā)工具,點(diǎn)擊菜單欄文件 -- 新建 -- 項(xiàng)目,創(chuàng)建一個(gè)C語言的控制臺(tái)項(xiàng)目。在項(xiàng)目的入口文件Program.cs內(nèi),我們可以新建一個(gè)靜態(tài)類和一個(gè)非靜態(tài)類。

```csharp

using System;

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

}

}

class Person

{

}

static class Vehicle

{

}

}

```

在上述代碼中,Person是一個(gè)非靜態(tài)類,而Vehicle是一個(gè)靜態(tài)類。

實(shí)例化靜態(tài)類和非靜態(tài)類

嘗試在Program.cs文件的Main函數(shù)中實(shí)例化上一步定義的靜態(tài)類和非靜態(tài)類。我們會(huì)發(fā)現(xiàn),靜態(tài)類是無法被實(shí)例化的,這正是靜態(tài)類的特點(diǎn)之一。

靜態(tài)類也無法包含非靜態(tài)的成員變量,因?yàn)殪o態(tài)類本身不能被實(shí)例化,所以也不可能存在對(duì)象來使用成員變量。

探索靜態(tài)和非靜態(tài)成員的使用

在非靜態(tài)類Person中定義一個(gè)成員變量,并創(chuàng)建一個(gè)靜態(tài)函數(shù),試圖在靜態(tài)函數(shù)中使用該成員變量會(huì)導(dǎo)致錯(cuò)誤。這是因?yàn)殪o態(tài)函數(shù)只能訪問靜態(tài)成員變量,而不能使用普通的成員變量。

如果我們將Person類中的成員變量改為靜態(tài)成員變量,那么就不會(huì)再出現(xiàn)錯(cuò)誤。

靜態(tài)成員的加載特性

在C程序語言中,靜態(tài)成員(如靜態(tài)類、靜態(tài)函數(shù)、靜態(tài)變量)會(huì)在非靜態(tài)成員之前加載到內(nèi)存中。因此,靜態(tài)成員通常被設(shè)計(jì)成工具類,以方便調(diào)用和使用。常見的靜態(tài)類比如Console類,通過按下F12鍵可以查看其內(nèi)容,你會(huì)發(fā)現(xiàn)其中包含許多靜態(tài)函數(shù)和靜態(tài)變量。

標(biāo)簽: