游戏开发论坛

 找回密码
 立即注册
搜索
楼主: shenguhan

游戏中的资源管理??资源高速缓存

[复制链接]

85

主题

824

帖子

878

积分

高级会员

Rank: 4

积分
878
QQ
 楼主| 发表于 2006-11-30 21:54:00 | 显示全部楼层

Re:游戏中的资源管理??资源高速缓存

呵呵,list::rbegin()返回的就是最后一个元素位置不是吗?

0

主题

54

帖子

54

积分

注册会员

Rank: 2

积分
54
发表于 2006-12-1 09:11:00 | 显示全部楼层

Re: 游戏中的资源管理??资源高速缓存

楼上的。不是要找方法。要返回一个最后的元素方法很多。你用逆向迭代器是没问题的。但逆向迭代器的rend同样也是指向最后一个元素的下个位置(即第一个元素的前一个位置。)
我只是想知道为什么他开始用gonner--后面却说不用了?但这么做好象是有问题。只是想知道为什么要这么做。而不是想请教些STL的一些东东。
哈哈。。。 [em10]

0

主题

54

帖子

54

积分

注册会员

Rank: 2

积分
54
发表于 2006-12-1 09:25:00 | 显示全部楼层

Re:游戏中的资源管理??资源高速缓存

std::list<ResHandle*>::iterator gonner = m_lru.end();
gonner--;
这句。。。。

35

主题

370

帖子

376

积分

中级会员

Rank: 3Rank: 3

积分
376
发表于 2006-12-1 21:46:00 | 显示全部楼层

Re:游戏中的资源管理??资源高速缓存

意思就是找到链表中最后一个资源,把他释放。 间接意思是释放最久没有使用的资源。
end()返回的指针确实为空我错了~

85

主题

824

帖子

878

积分

高级会员

Rank: 4

积分
878
QQ
 楼主| 发表于 2006-12-1 22:42:00 | 显示全部楼层

Re:游戏中的资源管理??资源高速缓存

gamesman: Re:游戏中的资源管理??资源高速缓存

std::list<ResHandle*>::iterator gonner = m_lru.end();
gonner--;
这句。。。。

好吧,我来说明一下,
不用自减而换成list::rbegin()是因为:
1.这样写很容易让人迷惑或误解;
2.这样写也实在是不大好看;
如果程序只是给自己看的话那怎么写都没问题,
但是如果程序还要给别人看得话,
最好还是些写的直观一点,
你说呢?

89

主题

4036

帖子

4132

积分

论坛元老

Rank: 8Rank: 8

积分
4132
发表于 2006-12-1 23:49:00 | 显示全部楼层

Re:游戏中的资源管理??资源高速缓存

PC的资源管理系统,与其说是资源管理,还不如说是句柄管理

0

主题

54

帖子

54

积分

注册会员

Rank: 2

积分
54
发表于 2006-12-3 19:25:00 | 显示全部楼层

Re:游戏中的资源管理??资源高速缓存

哈哈。如果是伪码随便怎么都没什么关系。可如果写的是代码,首先要求的是正确。你如果用end();然后--.首先他就是错误的。容易让编译器和人“误解”。。。结果有点适得其反。。

16

主题

114

帖子

114

积分

注册会员

Rank: 2

积分
114
发表于 2006-12-10 20:40:00 | 显示全部楼层

Re:游戏中的资源管理??资源高速缓存

既然这样子了,使用内存池是否更好?

89

主题

4036

帖子

4132

积分

论坛元老

Rank: 8Rank: 8

积分
4132
发表于 2006-12-10 22:07:00 | 显示全部楼层

Re:游戏中的资源管理??资源高速缓存

Handle管理,主要是让对象使用更加安全,方便. 而且可以把资源调度隐藏到句柄后面

16

主题

114

帖子

114

积分

注册会员

Rank: 2

积分
114
发表于 2006-12-11 10:46:00 | 显示全部楼层

Re:游戏中的资源管理??资源高速缓存

to gamesman

"你如果用end();然后--.首先他就是错误的。"
这为什么是错误的,我决定这样也可以; 只是没有list::rbegin()来到直观方便.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-25 11:47

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表