c#索引訪問器再探_get_set之訪問控制存取
using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication1 { class Team { private int[] arr = new int[100]; public int this[int index] // Indexer declaration { get { // Check the index limits. //if (index < 0 || index >= 100) if ((index == 3)||(index==5)) { return arr[index]; } else { //其它除了3與5索引的元素,在呼叫方查詢時全是777 return 777; } } set { //索引訪問器的供值優先順序高於 呼叫此類物件的供值語句 Team test = new Team(); test[3] = 256; if (index == 3 || index == 5) { arr[index] = 233444; } } } } } |
呼叫上述包含索引訪問器的TEAM類
using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Team test = new Team(); // 3與5號索引有資料,其它全是元素全是0 注:此直接供值被team類的索引訪問器set屏掉 //即set優先極高於下述2行程式碼 test[3] = 256; test[5] = 1024; for (int i = 0; i <= 10; i++) { //使用的是get索引訪問器 System.Console.WriteLine("Element #{0} = {1}", i, test[i]); } Console.ReadKey(); } } } |
除錯結果
Element #0 = 777 //對應get的else分支 Element #1 = 777 Element #2 = 777 Element #3 = 233444 //對應set部分 Element #4 = 777 Element #5 = 233444 Element #6 = 777 Element #7 = 777 Element #8 = 777 Element #9 = 777 Element #10 = 777 |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-718429/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- HTTP之訪問控制「CORS」HTTPCORS
- Flask——訪問控制Flask
- Mongodb訪問控制MongoDB
- 類的訪問控制
- openGauss 訪問控制模型模型
- ABAC訪問控制模型模型
- C#設計模式之訪問者模式C#設計模式
- weblogic控制檯訪問慢問題Web
- IOS - ACL (訪問控制列表)iOS
- 006.Nginx訪問控制Nginx
- Vue前端訪問控制方案Vue前端
- Ubuntu 增加埠訪問控制Ubuntu
- Swift 中的訪問控制Swift
- HCNA Routing&Switching之訪問控制列表ACL
- kubernetes實踐之十六:RBAC 角色訪問控制
- C#訪問MySql原始版C#MySql
- c#訪問WooCommerce 生成ProductC#
- php之像訪問陣列一樣訪問物件PHP陣列物件
- SSH遠端訪問及控制
- CentOS 中 TCP Wrappers訪問控制CentOSTCPAPP
- 遠端訪問及控制——ssh
- Swift的訪問控制講解Swift
- CDN 訪問控制的那些事
- Casbin訪問控制框架入門框架
- Nginx 對訪問量的控制Nginx
- 從mimikatz學習Windows安全之訪問控制模型(二)Windows模型
- 從mimikatz學習Windows安全之訪問控制模型(一)Windows模型
- 訪問控制中斷的風險
- Java 訪問許可權控制(6)Java訪問許可權
- yii修改控制器訪問的預設的方法
- Laravel 中的訪問器Laravel
- c#封裝、訪問修飾符C#封裝
- C# RESTful API 訪問輔助類C#RESTAPI
- 容器編排系統K8s之訪問控制--准入控制K8S
- Gitlab怎麼使用訪問令牌訪問Gitlab
- 訪問統計(排除爬蟲訪問)爬蟲
- Laravel 訪問器 $appends 忽略的問題LaravelAPP
- [20221128]再談防水牆(檢視訪問效能問題).txt
- 分散式文件儲存資料庫之MongoDB訪問控制分散式資料庫MongoDB