| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 745 人关注过本帖
标题:再请教一个问题,也是关于程序解读的。谢谢
只看楼主 加入收藏
ywqsa206
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2008-4-8
收藏
 问题点数:0 回复次数:3 
再请教一个问题,也是关于程序解读的。谢谢
最近一直徘徊在程序的解读上,没办法完全看读懂,请问下有什么好的方法没?
唉,连代码都看得不明不白的,又怎么来写程序呢?真的好累。肯请大虾们指点迷经。谢谢。

关于arr[i,j]=i+j; 这里它是如何跟索引器关联起来的呢?
经过循环之后,应该是得出这些值吧
arr[0,0]=0
arr[0,1]=1
arr[0,2]=2
arr[1,0]=1
arr[1,1]=2
arr[1,2]=3

i,j这里把值传入index1,index2
得到set{a[index1,index2]=value}
这里value是外部值,也就是得到
a[0,0]=0
a[0,1]=1
a[0,2]=2
a[1,0]=1
a[1,1]=2
a[1,2]=3
接着利用get{return a[index1,index2];}返回

Array2D arr=new Array2D(2,3);
这里传入参数给数组 a=new int[2,3]

就感觉哪里不对劲,说不上来。好奇怪。

下面是示例源码
using System;
using System.Collections.Generic;
using System.Text;

namespace Demo_4._2
{
    class Array2D
    {
        int[,] a;
        int rows, cols;
        public Array2D(int r, int c)              //构造函数
        {
            rows = r;
            cols = c;
            a = new int[rows, cols];
        }

        public int this[int index1, int index2]   //二参数索引器
        {
            get { return a[index1, index2]; }     //返回二维数组的一个元素
            set { a[index1, index2] = value; }    //对二维数组的一个元素赋值
        }
    }
    public class Test
    {
        static void Main()
        {
            Array2D arr = new Array2D(2,3);
            for (int i = 0; i < 2; i++)
            {
                for (int j = 0; j < 3; j++)
                {
                    arr[i,j]=i+j;                 //设置索引器
                    Console.Write(arr[i,j]+"");   //显示索引器
                }
                Console.WriteLine();
            }
        }
    }
}

[[it] 本帖最后由 ywqsa206 于 2008-4-17 02:11 编辑 [/it]]
搜索更多相关主题的帖子: 解读 
2008-04-17 01:52
xqyy
Rank: 1
等 级:新手上路
帖 子:221
专家分:0
注 册:2006-11-8
收藏
得分:0 
你看不懂?

[url=http://www.][我乐表情库 www.]创建自己的表情库,表情包下载,个性签名,牛逼头像,经典小游戏,QQ皮肤下载,注册后还可以在线免费看电影[/url]
2008-04-17 23:00
yuzhou
Rank: 1
来 自:湖北
等 级:新手上路
帖 子:136
专家分:0
注 册:2007-1-21
收藏
得分:0 
源码是对的啊。要把基础的语法弄明白(语言机制),然后在看稍微”长点的代码“,一步一步

机遇是给有准备的人
2008-04-17 23:27
ywqsa206
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2008-4-8
收藏
得分:0 
[bo]以下是引用 [un]xqyy[/un] 在 2008-4-17 23:00 的发言:[/bo]

你看不懂?


是啊。。看不明白,,能不能详细说下。谢谢。。

关于arr[i,j]=i+j; 这里它是如何跟索引器关联起来的呢?
经过循环之后,应该是得出这些值吧
arr[0,0]=0
arr[0,1]=1
arr[0,2]=2
arr[1,0]=1
arr[1,1]=2
arr[1,2]=3

i,j这里把值传入index1,index2
得到set{a[index1,index2]=value}
这里value是外部值,也就是得到
a[0,0]=0
a[0,1]=1
a[0,2]=2
a[1,0]=1
a[1,1]=2
a[1,2]=3
接着利用get{return a[index1,index2];}返回

Array2D arr=new Array2D(2,3);
传入参数给数组 a=new int[2,3]
这之后又要如何联系起来呢?

是哪个地方理解错了。。

[[it] 本帖最后由 ywqsa206 于 2008-4-18 02:36 编辑 [/it]]
2008-04-18 00:13
快速回复:再请教一个问题,也是关于程序解读的。谢谢
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026274 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved