4.28学习工作日志

来源:互联网 发布:常量数组初始化 编辑:程序博客网 时间:2024/06/05 14:43

今天处理一个问题:数据传递

由于前两天不知道后台会传一个什么样的数据过来,所以不知道怎么去写我这边的代码,于是,苦苦思索,未见端倪。

好在梁工给我指出了方向:定义一个结构体,外面传消息过来的时候,我这边都只接受一个结构体,这个结构体里面有唯一的一个值,即合同号,于是乎,我用这个合同号作为键值,结构体作为value,便可以建立一个map,map《合同号,结构体》X;map《合同号,结构体》::iterator iter;我就很容易的插入我的数据到列表控件了。现在只考虑加载数据的问题,不考虑数据更新的问题。

   数据加载:下面根据该合同号就可以把数据加到列表控件里面了。

 X【结构体-》合同号】=结构体;//完成结构体和合同号的映射

   int  nHasItem =getlistctrl()。getitemcount();

iter=X-》second/first;  迭代器是指的map(key,value),iter-》first/second;

   getlistctrl()。insertitem(nHasItem,x[结构体-》合同号。xxxx]);插入到某一列

 

 

这里主要是使用了map,使得键和值对应,不像数组,必须指定固定的空间,也不像指针链表,所以很好用,并且他的end是指向数据的最后一个元素的下一个元素。

 

未完待续:今天留下来的一个问题是:数据更新问题,就是假如后台某项数据更新了,我如何去更改列表中的数据:是不是先要更新map中的数据,然后更新列表控件中的数据。