首页 > 心得体会 > 先进事迹心得体会
贾元友先进事迹心得体会(小编整理)
编辑:落霞与孤鹜齐 识别码:75-395460 先进事迹心得体会 发布时间: 2023-04-12 17:19:25 来源:网络

第一篇:贾元友先进事迹心得体会

学习贾元友同志先进事迹心得体会

近日,区委专门发出通知,决定在全区基层党组织和广大党员干部中深入开展向贾元友同志学习活动。4月1日,丁书记带领全体人员全文学习了该《决定》,《决定》号召:学习贾元友同志对党忠诚、献身使命的坚定信念;学习贾元友同志善于学习、苦练精兵的责任担当;学习贾元友同志科学求实、攻坚克难的创造精神;学习贾元友同志爱岗敬业、无私奉献的高尚情操。

贾元友,山东淄博人,北京军区某部坦克6连3排班长。精通各类军事技术,享有“三特精兵”的赞誉,当车长,他是精通通信指挥的“特级无线电手”;当炮长,他是7次刷新实弹射击纪录的“特级射手”;当驾驶员,他是熟练驾驶两代三型坦克的“特级驾驶员”,用8年时间完成了中专、大专、本科的学历教育,最后从石家庄机械化步兵学院指挥专业毕业,获得军事学学士学位。媒体称之为铁甲兵王、新时代的“许三多”。

贾元友同志是立足本职学信息化、钻信息化、干信息化的优秀士官,是模范践行当代革命军人核心价值观的先进典型,也是各行各业工作者的学习楷模。他肯动脑、爱学习、能吃苦、讲奉献,是我学习、工作的榜样。

我的第一点体会是:学习贾元友坚定的政治信念,用党的创新理论武装个人头脑。贾元友同志常说:“理论学习有多扎实,前进的脚步就有多坚实。”他坚持把党的创新理论作为立身之根、导航之灯,持之以恒地加强学习。他把党的创新理论的一些基本观点摘记到小本子上,做成“口袋书”,利用课余时间、训练间隙抓紧学习。先后通读40多部理论著作,写下20余万字的读书笔记和心得体会。我们清晰地看到,他之所以面对挫折百折不挠,迎接挑战攻坚破难,立足岗位建功立业,正是源于他始终用远大的理想和坚定的信念引领人生,始终把学习党的创新理论作为立身做人、履职尽责的第一需要。学习贾元友的先进事迹,首先就要用党的创新理论武装个人头脑,积极学习实践科学发展观,主动践行社会主义核心价值观,坚定理想信念,不断强化政治意识、端正自我价值观,全身心地投入各项任务中。

我的第二点体会是:学习贾元友执著的创造精神,勤学苦钻练就精湛技能。贾元友经常说:“军人不仅要有尚武的精神,更要有智慧的头脑。”他不断激励自己实现从技能领域向智能领域的跨越。他创造的“四弹连一孔”射击佳绩,让我真切的感受到,在勇攀部队信息化建设高峰的生动实践中,一名士兵的舞台到底能有多大,脚步到底能走多远!作为一名基层的安监工作人员,练就过硬的专业技能是安全生产监管工作的关键所在。贾元友身上折射出一名共和国军人矢志打赢的不懈追求,我将以此为榜样,学习他心系打赢的使命感责任感,以持之以恒的精神钻研安全生产工作理论和专业知识,不断丰富知识储备,夯实理论基础,积极探索科学有效的新方法、新技巧,为完成好各项工作任务奠定坚实的基础。

我的第三点体会是:学习贾元友强烈的奉献意识,立足本职岗位实现人生价值追求。苦痛与得失、小家与大家,小我与大我,是每名军人都绕不过去的心结。贾元友解开了这个心结,化解得是那样令人感动。几年来,他3次错过提干的机会,但他始终无怨无悔,有人遇到难处,他伸手相帮,但对于他的亲人、他的爱人,常人眼中的必须,往往成为了他的奢求,父亲生病、妻子生产、儿子手术,他都没能守候在身边。作为一名安监人员,学习贾元友的先进事迹,就要像他那样把工作需要放在首位,自觉牺牲奉献,主动经受苦与累、得与失的考验,用实际行动在本职工作岗位上实现自已的人生价值。

我将把学习贾元友同志先进事迹和精神与本职工作紧密结合起来,坚持从高处着眼、低处入手,提高自身思想道德水平和个人修养;以认真专业务实的作风,爱岗敬业、履职尽责,踏踏实实做好各项本职工作;坚持勇于创新,增强理论应用实践能力,提高工作效率和工作质量;坚持从我做起、从身边的小事做起、从一点一滴做起,全面完成好各项工作任务。

第二篇:学习贾立群先进事迹心得体会

篇一:学习贾立群先进事迹心得体会

7月11日在医院党委组织下到会议中心聆听“北京市医管局贾立群同志先进事迹报告会”,在会议上共有五人做了精彩的演讲。他们分别是贾立群的同事、学生、临时驻院记者及贾立群本人。

北京儿童医院影像中心副主任贾立群是北京知青,原黑龙江生产建设兵团一师六团汽车连兵团战士。他作为一名B超医生,在这个岗位上已经工作30多年,先后以优异的工作成绩荣获北京市“爱国立功标兵”、北京市宣卫系统职业道德先进个人、北京市卫生局廉政建设先进个人、优秀共产党员等众多荣誉称号。

最让我感动的不是贾立群主任的这些荣誉,而是他身为一名共产党员的中国梦,他的梦想其实很简单也很难?——医术高超、病人信赖、百姓满意。为了实现这个梦想贾立群主任经常利用休息时间到手术室看手术,还把手术中切下来的标本拍成照片,晚上回到家对照B超图像仔细地研究分析。有一个甘肃来的小女孩,肚子断断续续地疼了6年,在当地开了两次刀,都没有找到病因。贾立群主任给孩子做B超时,发现她的肠子上有一个黄豆大小的囊肿,贾立群主任意识到这就是孩子肚子痛的根源。孩子的手术正在进行的时候,外科大夫打电话急急忙忙的说:“腹腔打开了,怎么什么也找不到啊?”贾立群主任就赶紧跑到手术室,拿起探头直接放入孩子的腹腔内仔细寻找,发现小囊肿被胰头包着。这可是高难度的手术啊!万一碰破了胰管,会有生命的危险!贾立群主任凭着经验,用B超引导着外科医生的手术刀,一点一点地向深层组织划去。经过两个多小时,这个让孩子疼了6年的祸害终于被切除了!为此,孩子的父亲专门来道谢,泪流满面地说:“谢谢您!救了我孩子的命……”听到这的时候,我的眼睛里也热乎乎的,这不仅仅是感动,更是为了这个小女孩感到高兴。

多年来由于贾立群主任诊断比较准确,每当碰到疑难病例的时候,医生们都会在B超单子上注明要做“贾立群B超”。传来传去的就有了“贾立群牌B超”的说法。贾立群主任承诺,只要不出差,24小时,随叫随到。最多的一天夜里被叫起来19次。为了能给更多的孩子做上B超,贾立群主任已经有20多年都吃不上中午饭了。饭都是晚上七八点下班后才吃。

30多年来,贾立群主任经常加班加点,也经常忽略了家人。一次,为了一个小孩做肾脏穿刺,孩子特别胖,哭闹得厉害,图像看不清楚。贾立群主任就一边哄着孩子,一边用探头引导着肾内科医生小心地进针。不知不觉地,2个多小时过去了,窗外一直下着瓢泼大雨。最后穿刺成功了,才突然想起来,他的7岁的儿子放学后还在汽车站等着接呢。当贾立群主任飞跑到了车站,看见儿子还站在大雨里等着呢,浑身都浇透了,连书包里都灌满了水。听到这里,我的眼泪止不住的流了下来。

很多家长都给送红包,贾立群主任不要。家长们都以为是客套,就硬往兜里塞,经过来回的撕扯,白大褂的兜全给撕坏了,贾立群主任干脆就从里面把兜口给缝死。再有家长塞钱的时候,怎么塞也塞不进去。

作为一名护士,我要以贾立群主任为榜样,认真学习他踏实肯干、无私奉献的崇高精神,多为患者着想,从小事做起,做一些实实在在的事情,充分发挥青年团员先锋模范作用。以强烈的事业心、责任感、勤勤恳恳的工作,本着全心全意为人民服务的宗旨,向党员们学习,立足岗位、恪尽职守,争取早日加入中国共产党。

篇二:学习贾立群先进事迹心得体会

通过学习贾立群,他平凡而又伟大的事迹和精神情操,使我深受感动。我们要学习贾立群。贾立群,北京儿童医院超声科主任、基础党支部书记、主任医师、副教授。曾获北京市劳动模范、群众心目中的好党员、第三届首都道德模范提名奖、全国医药卫生系统创先争优活动先进个人、优秀百姓宣讲员、第四届“首都十大健康卫士”等荣誉称号,近期获得第四届首都道德模范候选人荣誉称号。

首先我们要学习贾立群同志几十年如一日,一身正气、德艺双馨、廉洁行医、淡泊名利的优秀品质。我们要干干净净做人、踏踏实实做事,务实忘我,真正把思想统一到做好工作,把精力投入到工作中。贾立群同志的先进事迹全面展示了首都共 产党员人民至上、为民服务、岗位建功、清正廉洁的精神风貌。他说,作为一名共 产党员,一名普通的医生,看着一个个患儿从我们这里健康、快乐地走出去,就是我最大的幸福。这是北京人民骄傲,更是我们学习的榜样。首都是全国人民的首都,首都人民的工作状态同样受到全国人民的关注,我们要把清正廉洁、忘我奉献的精神风貌继续发扬光大。

第二要学习贾立群同志恪尽职守、兢兢业业、忘我工作、勤奋敬业、勇于献身的精神。在贾立群湖眼里,工作总是第一位的,他总是把党和人们的需要做为自己的唯一选择,忘我工作是他几十年主要的生活方式。贾立群同志扎根基层、甘于奉献,在门诊第一线最平凡的岗位上,奉献着自己的一生。儿童医院党委书记沈颖感慨地说:“为了方便患者,他的生活半径一直局限在5公里以内。是他对患儿至诚的关爱,对超声事业无限的热情,让他付出多少都无悔无怨!”他把患者的利益当作自己的利益,以勤奋敬业、求真务实和献身负责的实际行动,展示了白衣天使的精神风貌,为我们树立了一面旗帜。

第三要学习贾立群同志心系群众、兢兢业业、大医精诚的职业精神。我们要切实落实科学发展观,落实“北京精神”,以人为本、厚德载物、服务人民。贾立群同志心系群众,扎根基层,全心全意服务患者、努力实践为人民服务宗旨。在平凡的岗位上有着不平凡的贡献。我们在工作中,只有坚持以人为本,不断提高自我,才能得到不断改进、不断创新,才能得到人民的认可、社会的认可。

总之,贾立群同志的先进事迹,对我们是深刻的党性教育,使我们心灵受到震撼,灵魂得到净化,思想得到升华。他高度的从医觉悟,强烈的事业心,崇高的思想境界,优秀的品质,勇敢的进取精神,严谨的工作作风,高尚的情操,都值得我们学习。他干干净净做人,实实在在做事,使我们敬佩。我们都要以他为榜样,提高自己的综合素质,不断加强世界观改造,严格要求自己清正廉洁,认真做好本职工作,在自己的工作岗位上作出应有贡献。

篇三:贾立群的先进事迹有感

他,从医36年,接诊患儿30多万人次无一漏诊误诊;他,确诊疑难病症7万例,挽救两千危重患儿生命。他就是北京儿童医院超声医生贾立群,以精湛医术、高尚医德、亲民医风在患儿家长和业内同行心中镌刻下了“贾立群B超”品牌。

多年来由于贾立群主任诊断比较准确,每当碰到疑难病例的时候,医生们都会在B超单子上注明要做“贾立群B超”。传来传去的就有了“贾立群牌B超”的说法。贾立群主任承诺,只要不出差,24小时,随叫随到。最多的一天夜里被叫起来19次。为了能给更多的孩子做上B超,贾立群主任已经有20多年都吃不上中午饭了。饭都是晚上七八点下班后才吃。

30多年来,贾立群主任经常加班加点,也经常忽略了家人。一次,为了一个小孩做肾脏穿刺,孩子特别胖,哭闹得厉害,图像看不清楚。贾立群主任就一边哄着孩子,一边用探头引导着肾内科医生小心地进针。不知不觉地,2个多小时过去了,窗外一直下着瓢泼大雨。最后穿刺成功了,才突然想起来,他的7岁的儿子放学后还在汽车站等着接呢。当贾立群主任飞跑到了车站,看见儿子还站在大雨里等着呢,浑身都浇透了,连书包里都灌满了水。听到这里,我的眼泪止不住的流了下来。

很多家长都给送红包,贾立群主任不要。家长们都以为是客套,就硬往兜里塞,经过来回的撕扯,白大褂的兜全给撕坏了,贾立群主任干脆就从里面把兜口给缝死。再有家长塞钱的时候,怎么塞也塞不进去。

我们是服务在农村基层的村官,农村百姓就是我们的服务对象,如何为百姓谋福利、创收益、争荣誉是我们工作出发点。我们总想做出些丰功伟绩,其实“平凡有平凡的磨砺,成功有成功的心酸”,只有让我们身边的百姓满意,让我们所服务的群众肯定我们,我们就是优秀的大学生村官,我们才不枉大学生村官的身份,不枉百姓对我们的信任与依赖!努力做到时时保持先进性,做百姓的公仆,做百姓心目中的好村官。我们不需要荣誉,不需要奖杯,只要全村千余户百姓的好口碑!

第三篇:魏德友先进事迹心得体会

魏德友先进事迹心得体会

中哈边境新疆萨尔布拉克草原的黄昏,是一种空旷而孤寂的美。当橙红色的日轮坠向辽阔的地平线,草原深处的凉意渐浓,黑夜张口吞噬大地,形影相吊的白杨昂首坚挺,流连淡淡的夕照。踏着彩霞的余晖,草原的牧民们挥鞭赶着牛羊,从萨尔布拉克草原毗邻边境线的春秋牧场迁移到别处的夏季牧场。一望无垠的草原只剩下了76岁的魏德友和他的100多只羊。守边了半个多世纪,这位有着32年党龄的老党员习惯了孤独的生活。

魏德友同志的感人事迹进行了深入报道,引起强烈社会反响。7月15日,兵团党委组织部、兵团“两学一做”学习教育协调小组发出通知,对认真贯彻落实中央和自治区党委、兵团党委领导批示精神,结合“两学一做”学习教育,广泛开展向魏德友同志学习提出要求。

魏德友同志作为一名入党33年的老党员和老军垦,以扎根艰苦偏远边境地区半个多世纪的实际行动,生动诠释了共产党员坚定理想信念、献身党的事业的赤胆忠心和高度自觉;生动诠释了兵团党员干部“特别能战斗、特别能吃苦、特别能忍耐、特别能奉献”的优秀品质;生动诠释了兵团人“热爱祖国、无私奉献、艰苦创业、开拓进取”的执着坚守。

我们要学习他坚定信念、对党忠诚,遵守纪律、服从安排的政治品格,淡泊名利、吃苦耐劳,不计得失、甘于吃亏的奉献精神,忠于职守、坚韧执着,脚踏实地、认真较真的崇高境界,热爱家乡、保卫祖国,勇于牺牲、寸土不让的国防国土意识,与兵地各族群众互帮互助、和谐相处,乐观向上、低调淳朴的生活态度,不忘初心、继续前进。

生命的长短以时间来计算,生命的价值以贡献来衡量。奉献是生命的花开,人只有奉献于社会、贡献于世界,才能活出生命的意义。

奉献总是和付出紧密相连,我们可以奉献聪明才智,可以奉献物资钱财,可以奉献青春年华,甚至可以奉献生命。为了边境的安全稳定,魏德友为国家义务巡边50多年,常年过着“家住路尽头,放牧就是巡逻”的生活,他淡泊名利、吃苦耐劳,他不计得失、甘于吃亏,诠释了一名普通共产党员无私奉献的精神,透露出对祖国的强烈热爱之情,值得人们向他学习。

弘扬奉献精神,就要像魏德友一样淡泊名利,不计较个人得失。奉献是一种真诚自愿的付出行为,是一种至高的精神境界。奉献精神不是某人一时的“心血来潮”,而是他正确人生观、价值观的体现。人活着为什么?人生的意义是什么?人应该怎样度过自己的一生?在社会主义市场经济、利益多元化的今天,有些人在“人不为己,天诛地灭”的人生观支配下,凡事先替自己着想,更有人见利忘义、唯利是图、不择手段,堕落为腐败分子。那些人的生命意义在哪? 弘扬奉献精神,就要像魏德友一样把集体、国家利益放在第一位。在现代汉语中,奉献是指为社会、国家、民族不计名利,努力贡献的精神,其本质是对社会、国家、民族的忠诚。人活着要有价值,有的人重于泰山,有的人轻于鸿毛。人的价值大小须以为人民、为国家、为社会贡献的大小来体现。

在历史的长河中,一辈子很短,用它来求取物质的享受和个人的利益,生命如随水而逝的落花,留不下一丝痕迹;而把个人的奋斗融入国家的大局、人民的利益,就会在后人的追忆中延续生命,在岁月深处写下崇高。

第四篇:贾启元

贾启元:中国地质大学资源学院026102班学生,共青团员。性格活泼开朗,乐观自信;生活态度积极向上,积极向党组织靠拢;乐于与人交流,有较强的组织、沟通和协调能力;求真务实,不畏困难和挫折,敢于迎难而上,不惧挑战。学习上勤奋好学,脚踏实地,敢于独立思考,善于思考。在学习同时,积极参与红十字会和自强社等各种社团活动,以及班级组织的各种志愿者活动,以培养和提升自我综合素质。曾获国家励志奖学金,“校级优秀学习标兵 ”和“校优秀共青团员”。

旅游局:

(1)本市近年来旅游业现状,农家乐作为一种新型的旅游业发展模式在推

动本市旅游业发展中所起的作用?

(2)本市农家乐的发展现状和远景,市政府和旅游局将会采取哪些具体措

施以推动农家乐的更好更快发展?

农业局:

(1)本市农民生活现状,农家乐的发展在改善农民生活中发挥的作用?

(2)本是农家乐在发展中遇到的困难,以及政府部门将会采取哪些措施解

决这么困难?

农家乐业主:

(1)政府对发展农家乐的政策和措施,给予了哪些帮助?

(2)以农家乐的形式发展自家经济的感想,希望政府还将采取哪些措施以

支持其发展?

游客:

(1)为什么选择农家乐这种旅游形式?

(2)现存的农家乐的发展模式是否满足游客的需求,作为游客,希望农家

乐得到怎样改进?

当地居民:

(1)农家乐的发展给当地居民生活带来了哪些影响?

问卷问题:

(1)你对农家乐的餐饮、住宿、卫生和服务等是否满意:()

A.很满意B.大体满意C.一般D.很不满意

(2)你大致隔多久去农家乐游玩一次:()

A.一星期B.一个月C.半年D.一年以上

第五篇:友元C++BULIDER讲稿

友元

类的主要特点之一是数据隐藏,即类的私有成员只能在类定义的范围内使用,也就是

说私有成员只能通过它的成员函数来访问。但是,有时候需要在类的外部访问类的私有成员。为此,就需要寻找一种途径,在不放弃私有数据安全性的情况下,使得类外部的函数或

类能够访问类中的私有成员,在C++中就用友元作为实现这个要求的辅助手段。C++中的友元为数据隐藏这堵不透明的墙开了一个小孔,外界可以通过这个小孔窥视类内部的秘密,友元是一扇通向私有成员的后门。

友元既可以是不属于任何类的一般函数,也可以是另一个类的成员函数,还可以是整

个的一个类(这样,这个类中的所有成员函数都可以成为友元函数)。

3.6.1 友元函数

友元函数不是当前类的成员函数,而是独立于当前类的外部函数,但它可以访问该类的所有对象的成员,包括私有成员和公有成员。

在类定义中声明友元函数时,需在其函数名前加上关键字friend。此声明可以放在公有部分,也可以放在私有部分。友元函数可以定义在类内部,也可以定义在类的外部。

下面是一个使用友元函数的例子。例3.1 #include #include class girl{

char *name;

int age;public:

girl(char *n,int d)

{ name=new char[strlen(n)+1];

strcpy(name,n);

age=d;

}

friend void disp(girl &);

//声明友元函数

~girl()

{ delete name;} };

void disp(girl &x)

//定义友元函数

{

cout<<“girl's name is:” <

}

void main(){ girl e(“Chen Xingwei”, 18);

disp(e);

//调用友元函数 }

程序的运行结果如下:

girl's name is:Chen Xingwei,age:18

从上面的例子可以看出,友元函数可以访问类对象的各个私有数据。若在类girl的声 明中将友元函数的声明语句去掉,那么函数disp()对类对象的私有数据的访问将变为非法的。说明:

(1)友元函数虽然可以访问类对象的私有成员,但它毕竟不是成员函数。因此,在类的外部定义友元函数时,不必像成员函数那样,在函数名前加上“类名::”。

(2)友元函数一般带有一个该类的入口参数。因为友元函数不是类的成员,所以它不能直接引用对象成员的名字,也不能通过this指针引用对象的成员,它必须通过作为入口参数传递进来的对象名或对象指针来引用该对象的成员。

例如上面例子中的友元函数void disp(girl &x)就带有该类的一个入口参数。(3)当一个函数需要访问多个类时,友元函数非常有用,普通的成员函数只能访问其所属的类,但是多个类的友元函数能够访问相应的所有类的数据。

例如有boy和girl两个类,现要求打印出所有的男生和女生的名字和年龄,我们只需 一个独立的函数prdata()就能够完成,但它必须同时定义为这两个类的友元函数。下例

给出了这样的一个程序。例3.2

#include #include class boy;

//向前引用 class girl{

char name[25];

int age;public:

void init(char N[],int A);

friend void prdata(const girl plg,const boy plb);//声明prdata()为girl的友元函数 };void girl::init(char N[],int A){ strcpy(name ,N);

age=A;} class boy{

char name[25];

int age;public:

void init(char N[],int A);

friend void prdata(const girl plg,const boy plb);//声明prdata()为boy的友元函数 };void boy::init(char N[],int A){ strcpy(name,N);

age=A;} void prdata(const girl plg,const boy plb)//定义友元函数prdata(){ cout<<“name: ”<

cout<<“age: ”<

cout<<“name: ”<

cout<<“age: ”<

boy B1,B2,B3;

G1.init(“Stacy”, 12);

G2.init(“Judith”, 13);

G3.init(“Leah” ,12);

B1.init(“Jim”,11);

B2.init(“Michael”, 13);

B3.init(“ Larry”, 12);

prdata(G1, B1);

//调用友元函数prdata()

prdata(G2, B2);

//调用友元函数prdata()

prdata(G3, B3);

//调用友元函数prdata()} 程序运行结果如下;

name:Stacy

age:12

name:Jim

age:11 name:Judith age:13 name:Michael

age:13

name:Leah

age:12

name:Larry

age:12

程序中的第3行是由于第9行的要求而存在的。因为友元函数带了两个不同的类的对象,其中一个是类boy的对象,而类boy要在晚一些时候才被声明。为了避免编译时的错误,编程时必须通过向前引用(forward reference)告诉C++类boy将在后面定义。在向前引用类声明之前,可以使用该类声明参数,这样第9行就不会出错了。

prdata()是程序中的一个独立函数,可以被main()或其它任意函数调用。但由于它被

定义成类boy和类girl的友元函数,所以它能够访问这两个类中的私有数据。

⑷友元函数通过直接访问对象的私有成员,提高了程序运行的效率。在某些情况下,如运算符被重载时,需要用到友元。但是友元函数破坏了数据的隐蔽性,降低了程序的可维护性,这与面向对象的程序设计思想是背道而驰的,因此使用友元函数应谨慎。

3.6.2 友元成员

除了一般的函数可以作为某个类的友元外,一个类的成员函数也可以作为另一个类的友元,这种成员函数不仅可以访问自己所在类对象中的私有成员和公有成员,还可以访

问friend声明语句所在类对象中的私有成员和公有成员,这样能使两个类相互合作、协调

工作,完成某一任务。

在例3.3所列的程序中,声明了disp()为类boy的成员函数,又是类girl的友元函数。例3.3 #include #include class girl;class boy {

char * name;

int age;public:

boy(char *n,int d)

{ name=new char[strlen(n)+1];

strcpy(name,n);

age=d;

}

void disp(girl &);

//声明disp()为boy的成员函数

~boy()

{ delete name;} };class girl {

char *name;

int age;public:

girl(char *n,int d)

{ name=new char[strlen(n)+1];

strcpy(name,n);

age=d;

}

friend void boy::disp(girl &);

//声明boy的成员函数disp()为girl的友元函数

~girl()

{ delete name;} };

void boy::disp(girl &x)//定义友元函数disp(){ cout<<“ boy's name is: ”<cout<<“ girl's name is: ”<

girl e(“zhang wei”,18);

b.disp(e);} 程序运行结果如下:

boy's name is:chen hao,age:25

girl's name is:zhang wei,age:18

说明:

(1)一个类的成员函数作为另一个类的友元函数时,必须先定义这个类。例如上例中,类boy的成员函数为类girl的友元函数,必须先定义类boy。并且在声明友元函数时,要加上成员函数所在类的类名,如:

friend void boy::disp(girl&);

(2)程序中第3行“class girl;”为向前引用,因为函数disp()中将girl&作为参数,而girl在要晚一些时候才被定义。

3.6.3 友元类

不仅函数可以作为一个类的友元,一个类也可以作为另一个类的友元。这种友元类的说明方法是在另一个类声明中加入语句“friend 类名(即友元类的类名),”,此语句可以

放在公有部分也可以放在私有部分,例如:

class Y{ //….};

class X{

//….friendY;

//声明类Y为类X的友元类 //…

};

当一个类被说明为另一个类的友元时,它的所有的成员函数都成为另一个类的友元

函数,这就意味着作为友元的类中的所有成员函数都可以访问另一个类中的私有成员。

下面的例子中,声明了两个类boy和girl,类boy声明为类girl的友元,因此类boy的成员函数都成为类girl的友元函数,它们都可以访问类girl的私有成员。

例3.25 #include #include class girl;class boy {

char *name;

int age;public:

boy(char *n,int d)

{ name=new char[strlen(n)+1];

strcpy(name,n);

age=d;

}

void disp(girl &);

//声明disp()为类boy的成员函数

~boy()

{ delete name;} };class girl {

char * name;

int age;

friend boy;

//声明类boy是类girl的友元 public:

girl(char *n,int d)

{ name=new char[strlen(n)+1];

strcpy(name,n);

age=d;

}

~girl()

{ delete name;} };void boy::disp(girl &x)//定义函数disp()为类boy的成员函数,//也是类girl的友元函数 { cout<<” boy's name is: “<cout<<” girl's name is: “<

girl e(”zhang wei“,18);

b.disp(e);}

程序运行结果如下:

boy's name is:chen hao,age:25

girl's name is:zhang wei,age:18

说明:友元关系是单向的,不具有交换性。若类X是类Y的友元(即在类Y定义中声明X为friend类),类Y是否是X的友元,要看在类中是否有相应的声明。友元关系也不具有传递性,若类X是类Y的友元,类Y是类Z的友元,不一定类X是类Z的友元。

3.7 类对象作为成员

在类定义中定义的数据成员一般都是基本的数据类型。但是类中的成员也可以是对

象,叫做对象成员。使用对象成员着重要注意的问题是构造函数的定义方式,即类内部对象的初始化问题。

含有对象成员的类,其构造函数和不含对象成员的构造函数有所不同,例如有以下的类:

class X{

类名1 成员名1:

类名2 成员名2;

……

类名n 成员名n;

};

一般来说,类X的构造函数的定义形式为:

X::X(参数表0):成员名1(参数表1),„,成员名n(参数表n){

//构造函数体

} 冒号后面的部分是对象成员的初始化列表,各对象成员的初始化列表用逗号分隔,参数表i(i为1到n)给出了初始化对象成员所需要的数据,它们一般来自参数表。

当调用构造函数X::X()时,首先按各对象成员在类定义中的顺序依次调用它们的构造函数,对这些对象初始化,最后再执行X::X()的函数体。析构函数的调用顺序与此相反。

下面的例子中有两个类string和girl,类girl中的一个数据成员name是类string的一个对象,即name是类girl的一个对象成员。两个类都有各自的构造函数,而类girl的构造函数被执行时,希望能给其中的string类的成员对象也初始化为具体的值。

例3.26 #include #include class string{

//声明类string

private:

char *str;

public:

string(char *s)

//定义类string的构造函数

{ str=new char[strlen(s)+1];

strcpy(str, s);

}

void print()

{ cout<

~string()

{ delete str;} };class girl{

//声明类girl private:

string name;

//name为类girl的对象成员

int age;public:

girl(char *st, int ag):name(st)

//定义类girl的构造函数

{ age=ag;}

void print()

{ name.print();

//调用类string的对象name的成员函数print()

cout<<”age:“<

}

~girl()

{ } };void main(){ girl obj(”Chen hao",25);

obj.print();}

程序运行结果如下: chen hao age:25 说明:

(1)声明一个含有对象成员的类,首先要创建各成员对象。本例在声明类girl中,定义了对象成员name:

string name;

(2)girl类对象在调用构造函数进行初始化的同时,也要对对象成员进行初始化,因为它也是居于此类的成员。因此在写类girl的构造函数时,也缀上了对对象成员的初始化: girl(char *st,int ag):name(st)于是在调用girl的构造函数进行初始化时,也给对象成员name赋上了初值。

这里需要注意的是:在定义类girl的构造函数时,必须缀上其对象成员的名字name,而不能缀上类名,若写成;

girl(char *st,int ag):string(st)是不允许的,因为在类girl中是类string的对象name作为成员,而不是类string作为其成员。

贾元友先进事迹心得体会(小编整理)
TOP