图片 3
威尼斯城所有登入网址

分块简单介绍,简单介绍

哈罗德·品特是英国著名剧作家、导演,代表作有《升降机》、《归于尘土》、《山地语言》、《生日聚会》等,曾获得诺贝尔文学奖、卡夫卡文学奖、奥地利欧洲国家文学奖等荣誉。品特生于英国伦敦北部哈克尼地区,曾在哈克内当斯文法学校学习,20岁左右开始创作,后来开始写戏剧,成为英国荒诞派的代表作家。2008年,品特逝世,享年78岁,葬于坎瑟尔·格林公墓。人物经历图片 1哈罗德·品特
1930年10月10日,哈罗德·品特生于伦敦北部哈克尼地区西斯威特路19号,是杰克·品特和弗朗西斯·品特的独生子。
1939年,被疏散到康沃尔郡梅瓦杰塞附近的西尔海斯,这是二战期间待在伦敦以外的第一个住处,许多逗留之处中的第一个。
1944年,在哈克尼·唐斯文法学校就读。1947年,在学校的戏剧演出中扮演麦克白,受到《新闻纪事报》的评论。1948年秋季,进入皇家戏剧艺术学院学习。10月,被征召服兵役,但他将自己登记为反战者。
1949年,因拒服兵役,曾两次被传到军事法庭受审,两次遭到逮捕,后来罚款了事。从皇家戏剧艺术学院辍学,一度流浪在外。后待在家中,读书并写作,同时在申请表演方面的工作。
1950年,两首小诗登载在《伦敦诗歌》杂志上;8月获得第一份工作,作为一位演员;9月在BBC电台部的广播剧《聚焦足球场》里扮演次要的角色。
1951年1—7月,在演讲及戏剧中心学校继续表演方面的训练,读了两个学期。8月,被阿努·麦克马斯特聘用,去爱尔兰作为期6个月的巡回演出,在莎翁及其他经典戏剧中扮演角色。
1952年,继续在麦克马斯特的剧团里,同波琳·弗拉纳根及巴里·福斯特在一起;同时继续写诗,并且发现了贝克特的作品。1953年,加入唐纳德·沃尔菲特的戏剧公司;与维维恩·麦钱特相识;开始创作小说《侏儒》。
1954年,取舞台艺名大卫·巴伦;参加哈德尔菲尔德巡回演出公司的冬季演出。1955年在科切斯特巡回剧团演出。
1956年在伯恩茅斯表演;又遇见了维维恩·麦钱特;9月14日,他们结婚;在康沃尔郡度过蜜月后,他们一起加入桃魁的巡回剧团。
1957年,在桃魁、伯明翰、帕尔默斯·格林及沃尔辛等地表演。5月15日,所作《房间》一剧在布里斯托大学戏剧系上演。12月,重新排演的《房间》参加《星期日泰晤士报》学生戏剧比赛,受到哈罗德·霍布逊的称赞。
1958年4月28日,《生日晚会》在剑桥的艺术剧院上演;5月19日在伦敦哈默斯密斯的抒情剧院上演。创作《暖房》。
1959年1月,在伯明翰导演《生日晚会》。7月15日,《黑色与白色》及《工厂里的麻烦事》在时事讽刺小品系列《从一个到另一个》中上演,在哈默斯密斯的抒情剧院上演。7月18日,《送菜升降机》用德语在法兰克福市剧院上演。7月29日,《微痛》广播剧播出。9月23日,《最后一个走的》、《请求停止》及《特别提供》在《八部小品》系列中上演,是在阿波罗剧院上演的。
1960年1月21日,《房间》及《送菜升降机》在汉普斯特德戏剧俱乐部上演;两部剧后都转到皇家宫廷剧院上演。3月1日,广播剧《一夜外出》播出,品特扮演其中的西利。3月22日,电视剧《生日晚会》播出。4月24日,电视剧《一夜外出》播出。4月27日,《看管人》在伦敦艺术剧院俱乐部上演。该剧获1960年《晚间新闻报》戏剧奖。7月21日,电视剧《夜校》播出。7月27日,《生日晚会》在旧金山演员工作坊剧院开演,这是品特剧作在美国的首次专业演出。9月19日,最后一次以大卫·巴伦的艺名露面表演。12月2日,电视剧《侏儒》播出。
1961年1月18日,《微痛》在伦敦艺术剧院俱乐部上演。5月11日,电视剧《收集证据》播出。9月17日,《一夜外出》在都柏林的盖特剧院上演。10月4日,《看管人》在纽约学园剧场开演,这是品特的首场百老汇演出。
1962年6月18日,品特和彼得·霍尔一起在奥德威奇剧院导演《收集证据》。1963年3月28日,电视剧《情人》播放,该剧获意大利电视剧奖。9月18日,在伦敦艺术剧院俱乐部导演《情人》及《侏儒》。《看管人》拍成电影,导演是克莱夫·唐纳,1964年在美国发行,片名改为《客人》。《仆人》拍成电影,导演是约瑟夫·洛赛。
1964年4—5月,电视小品《那是你的问题》、《就是这些》、《申请者》、《面试》及《三人对话》播出。《吃南瓜者》拍成电影,导演是杰克·克莱登。在萨特作品《照相机》中扮演贾尔辛。
1965年3月25日,电视剧《茶会》播出。6月3日,皇家莎士比亚公司的奥德威奇剧院上演《回家》。
1966年,被授予大英帝国荣誉勋章。9月25日,电视剧《夜校》播出。《奎勒备忘录》拍成电影,导演是迈克·安德森。1967年1月3日,《回家》在纽约八音盒剧场上演。2月20日,电视剧《地下室》播出,品特扮演剧中的斯托特。《事故》拍成电影,导演是约瑟夫·洛赛。《回家》荣获纽约戏剧批评家奖。
1968年4月25日,广播剧《风景》在BBC播出,此前品特没有按张伯伦勋爵的要求修改戏剧文本。l0月10日,《地下室》及《茶会》在纽约的东边戏院上演。
1969年7月2日,《沉默》和《风景》在皇家莎士比亚公司的奥德威奇剧院上演。8月9日,在喜剧剧院,戏剧小品《夜晚》放在时事讽刺剧《混合双打》中上演。
1970年1月18日,广播剧《生日晚会》在BBC电台播出。9月17日,《茶会》及《地下室》在公爵夫人剧院上演,品特扮演斯托特。在美人鱼剧院导演詹姆斯·乔伊斯的《流放者》。被授予德国莎士比亚戏剧奖。
1971年6月1日,《昔日》在皇家莎士比亚公司的奥德威奇剧院上演。在标准剧院导演西蒙·葛雷的《巴特雷》。
1972年,开始创作普鲁斯特电影剧本。1973年4月13日,电视剧《独白》播出。导演由西蒙·葛雷的《巴特雷》改编的电视剧。
1974年,根据司各特·菲兹杰拉德同名小说改编的《最后的大亨》拍成电影,导演是伊莱亚·卡赞。在皇家国家剧院导演约翰·霍普金斯的《近亲》。
1975年4月23日,《虚无乡》在老维克剧院的皇家国家剧院上演;7月15日转到温德姆剧院。lO月22日,电视剧《昔日》播出。在皇后剧院导演西蒙·葛雷的《在忙其他事情》,后来去纽约导演此剧。在皇家国家剧院导演诺埃尔·科沃德的《快乐的精灵》。
1978年在环球剧院导演西蒙·葛雷的《后方纵队》。9月20日,根据艾丹·希金斯小说《下去吧,朗格利希》改编的电影剧本拍成电视版,在BBC播出,导演是大卫·琼斯。10月3日,电视剧《虚无乡》播出。11月15日,皇家国家剧院上演《背叛》。普鲁斯特电影剧本出版。
1979年,在皇家国家剧院导演西蒙·葛雷的《比赛结束》。1980年4月24目,在汉普斯特德戏剧俱乐部大使剧院导演《暖房》。11月27日,跟安东尼娅·弗雷泽结婚。
1981年2月13日,《家庭声音》在皇家国家剧院上演。在伦敦皇后剧院导演西蒙·葛雷的《夸特缅因的条件》。在汉普斯特德剧院导演罗伯特·伊斯特《发生在塔尔斯·希尔的事件》。
1982年3月27日,导演电视剧《暖房》。10月14日,《其他地方》(包括《家庭声音》、《就像是阿拉斯加》、《维多利亚车站》)在皇家国家剧院上演。
1983年,在皇家国家剧院导演让·吉劳朵的《特洛伊战争不会发生》。
12月18日,在阿波罗·维多利亚剧院导演《大佬》中的《正好》。
1984年,在哈默斯密斯的抒情剧院导演西蒙·葛雷的《共同追求》。3月,在哈默斯密斯的抒情剧院导演《出路》。
1985年3月7日,《出路》、《就像是阿拉斯加》以及《维多利亚车站》在公爵夫人剧院上演。品特任编剧的《海龟日记》拍成电影,导演是约翰·欧文。7月,存海马克特的阜家剧院导演田纳西·威廉斯的《可爱的青春鸟》。在美国圣路易斯及洛杉矶上演的《昔日》中扮演迪利。
1986年3月6日,广播剧《维多利亚车站》播出。在温德姆剧院的汉普斯特德戏剧俱乐部导演唐纳德·弗里德所著《瑟茜和亡命徒》。
1988年10月20日,在皇家国家剧院导演《山地语言》。12月11日,导演电视剧《山地语言》。
1989年品特任编剧的《团聚》拍成电影,导演是杰里·沙茨堡。品特改编的伊丽莎白·鲍恩所著《日之方中》拍成电影,导演是克里斯托弗·默拉汉。
1990年在哈默斯密斯的抒情剧院导演简·斯坦顿·希区柯克所著《香子兰》。出版小说《侏儒》。品特任编剧的《陌生人的安慰》拍成电影,导演是保罗·希拉德。马格丽特·阿特伍德所著、品特任编剧的《侍女的故事》拍成电影,伏尔克·希隆多夫任导演。
1991年6月20日,在喜剧剧院导演《看管人》。7月19日,在皇家宫廷楼上剧院导演《世界新秩序》。10月31日,在阿美达剧院导演《派对时间》,同场上演的还有《山地语言》。出版《诗歌和散文》。
1992年,在阿美达剧院及喜剧剧院上演的《虚无乡》中扮演赫斯特。11月17日,导演电视剧《派对时间》。
1993年9月7日,《月光》一剧在阿美达剧院和喜剧剧院上演。品特改编的卡夫卡小说《审判》,拍成电影,大卫·琼斯任导演。
1994年,《生日晚会》在皇家国家剧院上演。在都柏林的盖特剧院举行首次品特节,上演《背叛》、《送菜升降机》、《昔日》、《出路》、《月光》及《风景》。导演《风景》,后该剧转到皇家国家剧院演出。
1995年7月3日,在契切斯特戏剧节及标准剧院导演罗纳德·哈伍德所著《偏袒》。在契切斯特戏剧节及喜剧剧院上演的《匿房》中扮演鲁特。10月21日,导演电视剧《风景》。被授予大卫·科恩英国文学奖,旨在表彰其文学方面的终身成就。12月31日,品特根据普鲁斯特长篇巨著《追忆似水年华》改编的广播剧播出。
1996年,在布里斯托尔的老维克剧团及喜剧剧院导演雷金纳德·罗斯所著的《12位愤怒的人》。9月12日,在大使剧院的皇家宫廷剧团导演《从灰烬到灰烬》。荣获劳伦斯·奥立佛奖,旨在表彰其戏剧方面的终身成就。
1997年,都柏林盖特剧院举行第二届品特戏剧节,上演《收集证据》、《从灰烬到灰烬》、《就像是阿拉斯加》、《虚无乡》。品特在《收集证据》里扮演哈里,并导演了《从灰烬到灰烬》。在休·威特默所著《打破规则》中扮演约翰·斯密斯,该电视剧由BBC播出。在奥德威奇剧院导演西蒙·葛雷的《生命支撑》。
1998年5月13日,品特的三部剧作——《就像是阿拉斯加》、《收集证据》及《情人》在董马尔仓库剧院上演。在《收集证据》中,品特扮演哈里;《情人》后来去皇家剧院、巴斯及里士满剧院巡回演出。出版《各种声音:散文、诗歌及政治1949—1998》一书。
1999年,在沃特福德的宫殿剧院导演西蒙·葛雷的《近期的中产阶级》。品特强烈谴责北约轰炸科索沃。2000年3月16日,在阿美达剧院导演《房间》和《庆典》。在电影《曼斯菲尔德庄园》中扮演托马斯·伯特拉姆。10月8日,广播剧《月光》在BBC电台三套播出,品特扮演安迪。10月13日,BBC电台三套播出广播剧《微痛》,品特扮演其中的爱德华角色。11月15日,《看管人》在喜剧剧院上演。11月23日,在皇家国家剧院上演《追忆似水年华》,由迪·特雷维斯根据品特的普鲁斯特电影剧本改编。
2001年,品特参加为斯洛伯丹·米洛什维奇辩护的国际委员会,美国前司法部长拉姆赛·克拉克也在其中。2002年1月,品特被诊断患有食道癌。在下院发表措辞激烈的反战演讲,强烈反对美英在伊拉克进行的所谓“防止战争”的战争。
2003年,出版诗集《战争》。2004年11月,品特参与左翼名人要求弹劾英国首相布莱尔的运动。
2005年3月,品特突然在英国广播公司的一个访谈节目中宣布,将中断戏剧创作,转而将全部精力投入政治事务。3月18日,获威尔弗雷德·欧文诗歌奖。10月10日,在爱尔兰度过75岁生日。庆祝晚会结束后,摔了一大跤,头上缝了10多针。10月13日,瑞典文学院在推迟一周的情况下,宣布该年度的文学奖授给品特,称他“在剧作中揭示出隐藏在日常闲谈之下的危机,强行进入受压抑的封闭空间”。由于健康的原因,没能去瑞典参加颁奖仪式并作演讲。他将事先录制好的演讲录像发过去,供人们在大屏幕上收听收看,演讲的题目是《艺术,真理与政治》。
2008年12月24日,哈罗德·品特因患癌症在伦敦的家中去世,享年78岁,被埋葬在伦敦西北区的坎瑟尔·格林公墓。哈罗德·品特代表作图片 2哈罗德·品特
他的第一部戏剧《一间房子》在布里斯托尔演出。1958年,伦敦上演了他的另一部戏剧《生日聚会》。之后的作品包括《升降机》、《轻微的疼痛》、《夜出》、《看门人》、《情人》、《归家》、《沉默》、《昔日》和《无人区》等。
品特后期作品包括《一种阿拉斯加》、《在路上》、《山地语言》、《聚会》和《归于尘土》。品特还为电台和电视台撰写作品或执导戏剧,包括L.P.哈特利的《中间人》、《追忆似水年华》和约翰·福尔斯的《法国中尉的女人》。品特的妻子
1956年,品特与女演员维维安·莫姗特结婚,两年后他们的儿子丹尼尔出生。然而,1962-1969年,品特曾与BBC电视台的记者琼·贝克威尔有过一段长达7年的婚外情;1975年,品特与传记作家安东尼娅·弗拉瑟另一段婚外情给妻子莫姗特带来了巨大的打击,莫姗特将之公之于众,并提出离婚诉讼,1980年两人离婚。离婚后,莫姗特没有再婚,但却开始酗酒,于1982年离世。
1980年,品特与莫姗特离婚后,即与安东尼娅结婚,开始了28年不离不弃的婚姻生活。
然而,不太稳定的家庭生活、母亲的过早离世、父亲的再婚等生活变故,让儿子丹尼尔与父亲逐渐疏远,最终形同路人,2008年品特去世的时候,葬礼中没有出现丹尼尔的身影。品特与儿子丹尼尔之间的感情裂痕永远没能弥补。人物评价图片 3哈罗德·品特
《纽约时报》:“品特擅长揭示日常生活中的不祥与平静状态下的噪声,这使他成为最有影响的剧作家并成为同代人模仿对象。”
《每日电讯报》:“战后英国戏剧舞台上最具有创造力,最高深莫测的戏剧家。”
诺贝尔文学奖颁奖辞:“品特的作品中既没有赢家也没有输家。在人物之间的权力游戏中,人们很少看见谁占据了上风;他们改变着位置,在看似不经意的话语中上下沉浮”。
徐昂:“他真正对戏剧的贡献就是他的作品是可以作为英文戏教材的。他的原文,很容易看懂,但是能明白里面深层传达的东西又挺难,他其实发现了人类语言的诟病。”
迈克尔·比林顿:“品特的戏剧作品通常是由某一段特殊的个人经历引发,随后将会沿着自身的内部逻辑逐渐成形。我们不能说这些剧作是自传性的,但却不可避免地反映出,他在某个特定情境下流露出的恐惧,担忧和关注。”
沈林:“他的作品语言高度集中和故事合乎逻辑,这是我最大的感触。品特会用咖啡厅里旁边人的对话或者街边的聊天营造自己的戏剧风格。这个人给人最大感觉就是特楞,也特神,有胆儿。”

(1)简介,简介

1、什么是python

   引用官方的话:Python是一种易于学习,强大的编程语言。它具有高效的高级数据结构,并通过简单而有效的方法来进行面向对象编程。Python的优雅语法和动态类型,以及其解释性质,使其成为在大多数平台上的许多领域的脚本和快速应用程序开发的理想语言。

  这段话怎么理解呢?我们知道,任何编程语言的目的都是编写程序,而我们又是通过程序让计算机干活的。比如,播放一个mp3,玩一局吃鸡游戏,等等。计算的的大脑(CPU),通常是不能直接识别我们编写的程序,它只认机器指令。本质上,任何编程语言最终都会“翻译”成CPU可以执行的机器指令。跟据“翻译”的方式不同,编程语言可以分为两大类:编译型、解释型。Python是一种解释型的语言。(1)

  不同的编程语言,干同一个活,编写的代码量,差距是很大的。形象的理解就是,做同一件事,你可能用C语言得写1000行代码,而用C#只要写100行,用Python则可能只要10行。所以Python是一种高级的语言。 (2)

  需要注意的是,代码少的代价是运行速度慢,C程序运行1秒钟,C#程序可能需要5秒,而Python程序可能就需要20秒。Python程序通过Python解释器执行,执行效率比较低。

 

2、Python能做什么

  各行各业到处都是Python的身影,可以做网站(比如
YouTube、豆瓣),可以做图片处理,可以做科学计算,也可以爬虫,甚至于游戏,学好Python后不用担心没有用武之地,Google就大量的在使用。

  当然Python也有它不善长做的,比如超做系统,比如火箭控制系统等。我所说的不善长并非说不能,要记住很个语言都有自己善长的和不善长的,在合适的情况下选择合适的语言这才是程序员需要关心的。

 

 

3、Python的版本

  Python有两个大版本:一个是不2.x,一个是3.x。这两个版本是互相不兼容的,关于两者之者的区别我后面会提到。事实上2012的时候说Python2将于2015年不再支持,2014年改成了2020年,也许2.x说终结还过早,但现在注流的第三方库大多都兼容了3.x,本系列的教程是基于3.6。

  MIT的计算机第一门课一直在灌输两个道理:计算机程序是写给人看的,恰好能够运行;软件设计其实就是对于抽象复杂度的控制。这很有道理,哈哈,人生苦短,我用Python。

 

注(1):解释型的缺点是代码不能加密

注(2):高级编程语言通常都会提供一个比较完善的基础代码库,让你能直接调用。除了内置的库外,Python还有大量的第三方库。

1 、什么是 python
引用官方的话:Python是一种易于学习,强大的编程语言。它具有高效的高级数据结构,并通过简单而有效…

分块简介,简介

 

分块:顾名思义,把一个区间分成不同的块,然后由原来的每个点暴力转换为每个块的暴力,这样就大大减小了时间复杂度

 

可能涉及的几个词语解释:

区间:数列中连续一段的元素

区间操作:将某个区间[a,b]的所有元素进行某种改动的操作

块:我们将数列划分成若干个不相交的区间,每个区间称为一个块

整块:在一个区间操作时,完整包含于区间的块

不完整的块:在一个区间操作时,只有部分包含于区间的块,即区间左右端点所在的两个块

 

精品博客

分块:顾名思义,把一个区间分成不同的块,然后由原来的每个点暴力转换为每个块的暴力,这样就大大减小了时间复杂度…

C++简介,简介

Block 简介,block简介

1、Blocks简介

Block字面意思就是代码块 iOS4.0、Mac OS X
10.6开始Apple引入的特性

Block是Objective C语言中的对象
但是与NSObject有所区别 Block是特殊的Objective C对象

 

Block 对象提供了一个使用 C 语言和 C 派生语言(如 Objective-C 和
C++)来创建表达式作为一个特别的函数。在其他语言和环境中,一个block对象有时候被称为“闭包(closure)”。在这里,它们通常被口语化为”块(blocks)”,除非在某些范围它们容易和标准
C 表达式的块代码混淆。

对于闭包(closure),有很多定义,其中闭包就是能够读取其它函数内部变量的函数

“^”符号可以称为caret [‘kærət] 也叫脱字符 插入符 

 

图片 4

 

返回值(^块对象名称)(参数列表类型) = ^(参数列表){块对象中的代码};

 

2、用处

 

1)简单的回调过程,不用再实现并调用某个函数 (UIView动画)

2)代码简洁,减少冗余代码

3)与GCD结合使用 爽爆了 

使用:UIView动画、presentViewController、ASI 

 

3、声明和创建Block

声明Block引用 无参无返回 无参有返回
有参无返回 有参有返回

定义Block

使用Block

typedef声明 简称typedef
为现有类型创建一个新的名字,或称为类型别名,在结构体定义,还有一些数组等地方都会用到 

返回值或参数为Block的

snippet 代码片段

 

4、Block对变量存取管理

1)局部变量

局部变量,在Block中只读。Block定义时copy变量的值,在Block中作为常量使用,所以即使变量的值在Block外改变,也不影响它在Block中的值

 

2)__Block修饰的变量

如果要在block内修改block外声明的局部变量,那么一定要对该变量加__block标记

 

3)Static修饰符的或全局变量

因为全局变量或静态变量在内存中的地址是固定的,Block在读取该变量值的时候是直接从其所在内存读出,获取到的是最新值,而不是在定义时copy的常量.

 Block变量,被__Block修饰的变量称作Block变量。
基本类型的Block变量等效于全局变量或静态变量 但对象的block变量不会

 

5、Block的内存管理

非ARC下

Block是默认建立在栈上, 所以如果离开方法作用域, Block就会被丢弃

Block的copy、retain、release操作 
不同于NSObject的copy、retain、release操作:

只要实现一个对周围变量没有引用的Block,就会显示为是NSGlobalBlock

如果其中加入了对局部变量的引用,就是NSStackBlock

如果你对一个NSStackBlock对象使用了Block_copy()或者发送了copy消息,就会得到NSMallocBlock

 

1)NSGlobalBlock:retain、copy、release操作都无效;

2)NSStackBlock:retain、release操作无效,必须注意的是,NSStackBlock在函数返回后,Block内存将被回收,即使retain也没用。

容易犯的错误是[mutableAarry
addObject:stackBlock],(补:在ARC中不用担心此问题,因为ARC中会默认将实例化的Block拷贝到堆上)在函数出栈后,从mutableAarry中取到的stackBlock已经被回收,变成了野指针。

正确的做法是先将[stackBlock copy]到堆上,然后加入数组:[mutableAarry
addObject:[[stackBlock copy]
autorelease]]。支持copy,copy之后生成新的NSMallocBlock类型对象。

3)NSMallocBlock支持retain、release,虽然retainCount始终是1,但内存管理器中仍然会增加、减少计数。copy之后不会生成新的对象,只是增加了一次引用,类似retain;

4)Block_copy与copy等效,Block_release与release等效;

5)对Block不管是retain、copy、release都不会改变引用计数retainCount,retainCount始终是1;

6)尽量不要对Block使用retain操作,不方便管理。

Block的使用:UIView动画、presentViewController、ASI

 

6、Block对objc对象的内存管理

staticObj、globalObj、instanceObj、localObj、blockObj多种类型obj对象

主要是block被copy时其块中用到的变量的引用计数

1)非ARC

globalObj和staticObj在内存中的位置是确定的,所以Block
copy时引用计数不会改变。

instanceObj在Block
copy时并没有直接让instanceObj对象本身引用计数加1,但却让self引用计数加1。所以在Block中可以直接读写instanceObj变量。 

localObj在Block copy时,系统自动增加其引用计数。

blockObj在Block copy时,引用计数也不会改变。

使用__block避免循环引用 __block 类 *对象 = self

 

void(^block)(void)= ^{

[blockSelf doSomething];

};

 

7、循环引用retain cycle

循环引用指两个对象相互强引用了对方,即retain了对方,从而导致谁也释放不了谁的内存泄露问题。如声明一个delegate时一般用assign而不能用retain或strong,因为你一旦那么做了,很大可能引起循环引用

 

释放second 在fist delloc中释放 fist的delloc什么时候执行呢 ?

fist引用计数为0时执行 ,然而现在即便是将fist从window.rootViewController上卸载下来
即释放一次 却发现second还保留着first的一次引用 到头来还是要释放second
形成了delegate版本的retain cycle 即循环引用

 

释放_pBlock 在viewController delloc中释放 delloc什么时候执行呢?

viewController引用计数为0时执行 ,然而现在即便是将viewController从window.rootViewController上卸载下来
即释放一次 却发现_pBlock还保留着viewController的一次引用
到头来还是要释放_pBlock 形成了block版本的retain cycle 即循环引用

 

Block的内存管理

ARC下

在ARC下, 以下几种情况, Block会自动被从栈复制到堆:

1.被执行copy方法

2.作为方法返回值

3.将Block赋值给附有__strong修饰符的id类型的类或者Blcok类型成员变量时

4.在方法名中含有usingBlock的Cocoa框架方法或者GDC的API中传递的时候.

 

Block中的对象的内存管理

ARC下

只有在使用local变量时,block会复制指针,且强引用指针指向的对象一次。其它如全局变量、static变量、block变量等,block不会拷贝指针,只会强引用指针指向的对象一次。

block的循环引用,因为block在拷贝到堆上的时候,会retain其引用的外部变量,那么如果block中如果引用了它的宿主对象,那很有可能引起循环引用。如:self.myblock
= ^{[self doSomething];};

使用__weak避免循环引用

 

Tips:

内存主要分为

1.栈 – 由编译器自动分配释放  里面的变量通常是局部变量 函数参数等

2.堆 – 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收
alloc

3.全局区(静态区
static),全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。-
程序结束释放 static

People *p;  People *p2 = nil;

4.另外还有一个专门放常量的地方。- 程序结束释放  NSString *lastName =
@“xue”;

lastName = @“dkjs”;

5、方法区

 

简介,block简介 1、Blocks简介
Block字面意思就是 代码块 iOS4.0、Mac OS X 10.6开始Apple引入的特性
Block是Objective C语言中的对象 但是与NSObje…

C++ 简介

  C++是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的变成语言,支持过程化编程、面向对象编程和泛型编程。被认为是一种中级语言。是C的一个超集,事实上任何合法的C程序都是合法的C++程序。

  注:使用静态类型的编程语言是在编译时执行类型检查,而不是在运行时执行类型检查。

面向对象程序设计:

  C++
完全支持面向对象的程序设计,包括面向对象开发的四大特性:封装、抽象、继承、多态。

标准库

  标准的 C++ 由三个重要部分组成:

  •   核心语言,提供了所有构件块,包括变量、数据类型和常量,等等。
  •        C++ 标准库,提供了大量的函数,用于操作文件、字符串等。
  •   标准模板库(STL),提供了大量的方法,用于操作数据结构等

学习 C++

  学习 C++,关键是要理解概念,而不应过于深究语言的技术细节。

 

C++ 简介
C++是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的变成语言,支持过程化编程、面向对象编程和泛…

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章