<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"> <head> <meta http-equiv=Content-Type content="text/html; charset=unicode"> <meta name=ProgId content=Word.Document> <meta name=Generator content="Microsoft Word 14"> <meta name=Originator content="Microsoft Word 14"> <link rel=File-List href="index.files/filelist.xml"> <link rel=Edit-Time-Data href="index.files/editdata.mso"> <!--[if !mso]> <style> v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} </style> <![endif]--> <title>Object-Oriented Programming (OOP)</title> <!--[if gte mso 9]><xml> <o:DocumentProperties> <o:Author>Wang Zilei</o:Author> <o:LastAuthor>Wang Zilei</o:LastAuthor> <o:Revision>37</o:Revision> <o:TotalTime>97</o:TotalTime> <o:Created>2012-09-05T07:18:00Z</o:Created> <o:LastSaved>2012-09-19T01:56:00Z</o:LastSaved> <o:Pages>3</o:Pages> <o:Words>1492</o:Words> <o:Characters>8509</o:Characters> <o:Company>WwW.YlmF.CoM</o:Company> <o:Lines>70</o:Lines> <o:Paragraphs>19</o:Paragraphs> <o:CharactersWithSpaces>9982</o:CharactersWithSpaces> <o:Version>14.00</o:Version> </o:DocumentProperties> <o:OfficeDocumentSettings> <o:AllowPNG/> </o:OfficeDocumentSettings> </xml><![endif]--> <link rel=themeData href="index.files/themedata.thmx"> <link rel=colorSchemeMapping href="index.files/colorschememapping.xml"> <!--[if gte mso 9]><xml> <w:WordDocument> <w:Zoom>80</w:Zoom> <w:SpellingState>Clean</w:SpellingState> <w:GrammarState>Clean</w:GrammarState> <w:TrackMoves>false</w:TrackMoves> <w:TrackFormatting/> <w:ValidateAgainstSchemas/> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:DoNotPromoteQF/> <w:LidThemeOther>EN-US</w:LidThemeOther> <w:LidThemeAsian>ZH-CN</w:LidThemeAsian> <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript> <w:Compatibility> <w:BreakWrappedTables/> <w:SplitPgBreakAndParaMark/> <w:UseFELayout/> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> <m:mathPr> <m:mathFont m:val="Cambria Math"/> <m:brkBin m:val="before"/> <m:brkBinSub m:val="&#45;-"/> <m:smallFrac m:val="off"/> <m:dispDef/> <m:lMargin m:val="0"/> <m:rMargin m:val="0"/> <m:defJc m:val="centerGroup"/> <m:wrapIndent m:val="1440"/> <m:intLim m:val="subSup"/> <m:naryLim m:val="undOvr"/> </m:mathPr></w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true" DefSemiHidden="true" DefQFormat="false" DefPriority="99" LatentStyleCount="267"> <w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Normal"/> <w:LsdException Locked="false" Priority="9" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="heading 1"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9"/> <w:LsdException Locked="false" Priority="39" Name="toc 1"/> <w:LsdException Locked="false" Priority="39" Name="toc 2"/> <w:LsdException Locked="false" Priority="39" Name="toc 3"/> <w:LsdException Locked="false" Priority="39" Name="toc 4"/> <w:LsdException Locked="false" Priority="39" Name="toc 5"/> <w:LsdException Locked="false" Priority="39" Name="toc 6"/> <w:LsdException Locked="false" Priority="39" Name="toc 7"/> <w:LsdException Locked="false" Priority="39" Name="toc 8"/> <w:LsdException Locked="false" Priority="39" Name="toc 9"/> <w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption"/> <w:LsdException Locked="false" Priority="10" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Title"/> <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"/> <w:LsdException Locked="false" Priority="11" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Subtitle"/> <w:LsdException Locked="false" Priority="22" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Strong"/> <w:LsdException Locked="false" Priority="20" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Emphasis"/> <w:LsdException Locked="false" Priority="59" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid"/> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text"/> <w:LsdException Locked="false" Priority="1" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="No Spacing"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 1"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 1"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 1"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 1"/> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision"/> <w:LsdException Locked="false" Priority="34" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="List Paragraph"/> <w:LsdException Locked="false" Priority="29" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Quote"/> <w:LsdException Locked="false" Priority="30" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Intense Quote"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 1"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 1"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 1"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 1"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 1"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 2"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 2"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 2"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 2"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 2"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 2"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 2"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 2"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 2"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 3"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 3"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 3"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 3"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 3"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 3"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 3"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 3"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 3"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 4"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 4"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 4"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 4"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 4"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 4"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 4"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 4"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 4"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 5"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 5"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 5"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 5"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 5"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 5"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 5"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 5"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 5"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 6"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 6"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 6"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 6"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 6"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 6"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 6"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 6"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 6"/> <w:LsdException Locked="false" Priority="19" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis"/> <w:LsdException Locked="false" Priority="21" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis"/> <w:LsdException Locked="false" Priority="31" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference"/> <w:LsdException Locked="false" Priority="32" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Intense Reference"/> <w:LsdException Locked="false" Priority="33" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Book Title"/> <w:LsdException Locked="false" Priority="37" Name="Bibliography"/> <w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading"/> </w:LatentStyles> </xml><![endif]--> <style> <!-- /* Font Definitions */ @font-face {font-family:Wingdings; panose-1:5 0 0 0 0 0 0 0 0 0; mso-font-charset:2; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face {font-family:‹[SO; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-alt:SimSun; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} @font-face {font-family:‹[SO; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-alt:SimSun; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} @font-face {font-family:"Arial Unicode MS"; panose-1:2 11 6 4 2 2 2 2 2 4; mso-font-charset:134; mso-generic-font-family:swiss; mso-font-pitch:variable; mso-font-signature:-134238209 -371195905 63 0 4129279 0;} @font-face {font-family:Verdana; panose-1:2 11 6 4 3 5 4 4 2 4; mso-font-charset:0; mso-generic-font-family:swiss; mso-font-pitch:variable; mso-font-signature:536871559 0 0 0 415 0;} @font-face {font-family:"\@‹[SO"; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} @font-face {font-family:"\@Arial Unicode MS"; panose-1:2 11 6 4 2 2 2 2 2 4; mso-font-charset:134; mso-generic-font-family:swiss; mso-font-pitch:variable; mso-font-signature:-134238209 -371195905 63 0 4129279 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-unhide:no; mso-style-qformat:yes; mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:12.0pt; font-family:‹[SO; mso-bidi-font-family:‹[SO;} p.MsoHeader, li.MsoHeader, div.MsoHeader {mso-style-priority:99; mso-style-link:"u˜ w Char"; margin:0cm; margin-bottom:.0001pt; text-align:center; mso-pagination:widow-orphan; tab-stops:center 207.65pt right 415.3pt; layout-grid-mode:char; border:none; mso-border-bottom-alt:solid windowtext .75pt; padding:0cm; mso-padding-alt:0cm 0cm 1.0pt 0cm; font-size:9.0pt; font-family:‹[SO; mso-bidi-font-family:‹[SO;} p.MsoFooter, li.MsoFooter, div.MsoFooter {mso-style-priority:99; mso-style-link:"u˜ Char"; margin:0cm; margin-bottom:.0001pt; mso-pagination:widow-orphan; tab-stops:center 207.65pt right 415.3pt; layout-grid-mode:char; font-size:9.0pt; font-family:‹[SO; mso-bidi-font-family:‹[SO;} a:link, span.MsoHyperlink {mso-style-noshow:yes; mso-style-priority:99; color:blue; text-decoration:underline; text-underline:single;} a:visited, span.MsoHyperlinkFollowed {mso-style-noshow:yes; mso-style-priority:99; color:purple; text-decoration:underline; text-underline:single;} p {mso-style-noshow:yes; mso-style-priority:99; mso-margin-top-alt:auto; margin-right:0cm; mso-margin-bottom-alt:auto; margin-left:0cm; mso-pagination:widow-orphan; font-size:12.0pt; font-family:‹[SO; mso-bidi-font-family:‹[SO;} p.MsoAcetate, li.MsoAcetate, div.MsoAcetate {mso-style-noshow:yes; mso-style-priority:99; mso-style-link:"ybèlFh‡e,g Char"; margin:0cm; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:9.0pt; font-family:‹[SO; mso-bidi-font-family:‹[SO;} span.Char {mso-style-name:"ybèlFh‡e,g Char"; mso-style-noshow:yes; mso-style-priority:99; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:ybèlFh‡e,g; mso-ansi-font-size:9.0pt; mso-bidi-font-size:9.0pt; font-family:‹[SO; mso-ascii-font-family:‹[SO; mso-fareast-font-family:‹[SO; mso-hansi-font-family:‹[SO; mso-bidi-font-family:‹[SO;} p.stylesplite, li.stylesplite, div.stylesplite {mso-style-name:style_splite; mso-style-noshow:yes; mso-style-priority:99; mso-style-unhide:no; mso-margin-top-alt:auto; margin-right:0cm; mso-margin-bottom-alt:auto; margin-left:0cm; mso-pagination:widow-orphan; font-size:12.0pt; font-family:‹[SO; mso-bidi-font-family:‹[SO; color:teal;} p.styleitem, li.styleitem, div.styleitem {mso-style-name:style_item; mso-style-noshow:yes; mso-style-priority:99; mso-style-unhide:no; mso-margin-top-alt:auto; margin-right:0cm; mso-margin-bottom-alt:auto; margin-left:0cm; mso-pagination:widow-orphan; font-size:18.0pt; font-family:"Arial Unicode MS","sans-serif";} p.styleitem2, li.styleitem2, div.styleitem2 {mso-style-name:style_item2; mso-style-noshow:yes; mso-style-priority:99; mso-style-unhide:no; mso-margin-top-alt:auto; margin-right:0cm; mso-margin-bottom-alt:auto; margin-left:0cm; mso-pagination:widow-orphan; font-size:18.0pt; font-family:‹[SO; mso-bidi-font-family:‹[SO;} p.styleline, li.styleline, div.styleline {mso-style-name:style_line; mso-style-noshow:yes; mso-style-priority:99; mso-style-unhide:no; mso-margin-top-alt:auto; margin-right:0cm; mso-margin-bottom-alt:auto; margin-left:0cm; mso-pagination:widow-orphan; font-size:12.0pt; font-family:‹[SO; mso-bidi-font-family:‹[SO;} p.styleright, li.styleright, div.styleright {mso-style-name:style_right; mso-style-noshow:yes; mso-style-priority:99; mso-style-unhide:no; mso-margin-top-alt:auto; margin-right:0cm; mso-margin-bottom-alt:auto; margin-left:0cm; text-align:right; mso-pagination:widow-orphan; font-size:12.0pt; font-family:‹[SO; mso-bidi-font-family:‹[SO;} p.styletitle, li.styletitle, div.styletitle {mso-style-name:style_title; mso-style-noshow:yes; mso-style-priority:99; mso-style-unhide:no; margin-top:4.5pt; margin-right:0cm; margin-bottom:9.0pt; margin-left:0cm; mso-pagination:widow-orphan; font-size:24.0pt; font-family:‹[SO; mso-bidi-font-family:‹[SO;} span.Char0 {mso-style-name:"u˜ w Char"; mso-style-priority:99; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:u˜ w; mso-ansi-font-size:9.0pt; mso-bidi-font-size:9.0pt; font-family:‹[SO; mso-ascii-font-family:‹[SO; mso-fareast-font-family:‹[SO; mso-hansi-font-family:‹[SO; mso-bidi-font-family:‹[SO;} span.Char1 {mso-style-name:"u˜ Char"; mso-style-priority:99; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:u˜; mso-ansi-font-size:9.0pt; mso-bidi-font-size:9.0pt; font-family:‹[SO; mso-ascii-font-family:‹[SO; mso-fareast-font-family:‹[SO; mso-hansi-font-family:‹[SO; mso-bidi-font-family:‹[SO;} span.SpellE {mso-style-name:""; mso-spl-e:yes;} span.GramE {mso-style-name:""; mso-gram-e:yes;} .MsoChpDefault {mso-style-type:export-only; mso-default-props:yes; font-size:10.0pt; mso-ansi-font-size:10.0pt; mso-bidi-font-size:10.0pt; mso-ascii-font-family:"Times New Roman"; mso-hansi-font-family:"Times New Roman"; mso-font-kerning:0pt;} /* Page Definitions */ @page {mso-footnote-separator:url("index.files/header.html") fs; mso-footnote-continuation-separator:url("index.files/header.html") fcs; mso-endnote-separator:url("index.files/header.html") es; mso-endnote-continuation-separator:url("index.files/header.html") ecs;} @page WordSection1 {size:595.3pt 841.9pt; margin:72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin:42.55pt; mso-footer-margin:49.6pt; mso-paper-source:0;} div.WordSection1 {page:WordSection1;} /* List Definitions */ @list l0 {mso-list-id:141122348; mso-list-template-ids:-544044194;} @list l0:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l0:level2 {mso-level-number-format:bullet; mso-level-text:o; mso-level-tab-stop:72.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:"Courier New";} @list l0:level3 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:108.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l0:level4 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:144.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l0:level5 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:180.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l0:level6 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:216.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l0:level7 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:252.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l0:level8 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:288.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l0:level9 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:324.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l1 {mso-list-id:416750896; mso-list-template-ids:74719686;} @list l1:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l1:level2 {mso-level-number-format:bullet; mso-level-text:o; mso-level-tab-stop:72.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:"Courier New";} @list l1:level3 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:108.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l1:level4 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:144.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l1:level5 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:180.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l1:level6 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:216.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l1:level7 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:252.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l1:level8 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:288.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l1:level9 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:324.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l2 {mso-list-id:1270813909; mso-list-template-ids:-725592136;} @list l2:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l2:level2 {mso-level-number-format:bullet; mso-level-text:o; mso-level-tab-stop:72.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:"Courier New";} @list l2:level3 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:108.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l2:level4 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:144.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l2:level5 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:180.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l2:level6 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:216.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l2:level7 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:252.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l2:level8 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:288.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l2:level9 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:324.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l3 {mso-list-id:1290160270; mso-list-template-ids:1619576020;} @list l3:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l3:level2 {mso-level-number-format:bullet; mso-level-text:o; mso-level-tab-stop:72.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:"Courier New";} @list l3:level3 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:108.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l3:level4 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:144.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l3:level5 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:180.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l3:level6 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:216.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l3:level7 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:252.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l3:level8 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:288.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l3:level9 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:324.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l4 {mso-list-id:1447501024; mso-list-template-ids:-13598076;} @list l4:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l4:level2 {mso-level-number-format:bullet; mso-level-text:o; mso-level-tab-stop:72.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:"Courier New";} @list l4:level3 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:108.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l4:level4 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:144.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l4:level5 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:180.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l4:level6 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:216.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l4:level7 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:252.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l4:level8 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:288.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l4:level9 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:324.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l5 {mso-list-id:2066567201; mso-list-template-ids:-1866959378;} @list l5:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l5:level2 {mso-level-number-format:bullet; mso-level-text:o; mso-level-tab-stop:72.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:"Courier New";} @list l5:level3 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:108.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l5:level4 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:144.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l5:level5 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:180.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l5:level6 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:216.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l5:level7 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:252.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l5:level8 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:288.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} @list l5:level9 {mso-level-number-format:bullet; mso-level-text:§ð; mso-level-tab-stop:324.0pt; mso-level-number-position:left; text-indent:-18.0pt; mso-ansi-font-size:10.0pt; font-family:Wingdings;} ol {margin-bottom:0cm;} ul {margin-bottom:0cm;} --> </style> <!--[if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:nfhˆ <![endif]--><!--[if gte mso 9]><xml> <o:shapedefaults v:ext="edit" spidmax="2049"/> </xml><![endif]--><!--[if gte mso 9]><xml> <o:shapelayout v:ext="edit"> <o:idmap v:ext="edit" data="1"/> </o:shapelayout></xml><![endif]--> </head> <body lang=ZH-CN link=blue vlink=purple style='tab-interval:21.0pt'> <div class=WordSection1> <p class=styletitle align=center style='text-align:center'><a name=home><strong><span lang=EN-US style='font-family:‹[SO;mso-bidi-font-family:‹[SO'>Course: Object-Oriented Programming (OOP) using C++ </span></strong></a></p> <p class=styleitem><a name=introduction><span lang=EN-US>Introduction:</span></a></p> <p><span lang=EN-US>This course is aimed at beginners who have not learnt any programming course or a different language from C++. The course teaches students object-oriented programming (OOP) principles and core methods over C++. Our goal is to guide students to know the philosophy of programming design and the important features of C++ so that they can further self-study others, such as generic programming, design pattern. </span></p> <p><span lang=EN-US>The teaching method of this course is to concisely explain most important knowledge points of OOP by real programming and experiments using C++, rather than traditionally introducing all new features one by one. As in most courses, it cannot teach all aspects of C++. Alternatively, we choose to only lecture the important contents that are frequently used in practice. When ending this course, the students are expected to skillfully program mid-level software with C++ to resolve the real problems for research, projects, jobs, etc.</span></p> <p><span lang=EN-US>Note that the course is only to guide students programming through principle and practice, and you need and are expected to read more books to learn advanced knowledge if you want to be an expert of C++ Programming. In particular, you may refer to <a href="http://staff.ustc.edu.cn/~zlwang/oop/books.html">reference books</a>.</span></p> <p><span lang=EN-US>Actually, there have been quite many C++ programs developed for various applications in real world. For details, see <a href="http://www.stroustrup.com/applications.html">Stroustrup's lists</a> or the corresponding <a href="http://www.cppblog.com/Chipset/archive/2008/12/17/69625.html">Chinese version</a> that provides some typical application scenarios.</span></p> <p><span lang=EN-US>If you have any problems, please contact me via E-mail: <span class=SpellE>zlwang</span> AT <span class=SpellE>ustc</span> DOT <span class=SpellE>edu</span> DOT <span class=SpellE>cn</span> or visit my <a href="http://staff.ustc.edu.cn/~zlwang">homepage</a>.</span></p> <p><span lang=EN-US><a href="#textbook">Textbook</a> | <a href="#slides">Lecture Slides</a> | <a href="#experiment">Experiment</a> | <a href="#examine">Final Examine</a> </span></p> <div class=MsoNormal align=center style='text-align:center'><span lang=EN-US> <hr size=2 width="100%" noshade style='color:teal' align=center> </span></div> <p class=styleitem><a name=textbook><span lang=EN-US>Textbook:</span></a></p> <p class=MsoNormal align=center style='text-align:center'><span style='mso-bookmark:textbook'><span lang=EN-US><span style='mso-no-proof:yes'><img border=0 width=353 height=430 id="_x0000_i1034" src="pic/programming_front_en.jpg" alt="ô‹f: ô‹f: ô‹f: E:\Person\homepage\oop\pic\programming_front_en.jpg"></span>&nbsp;&nbsp;&nbsp;&nbsp; <span style='mso-no-proof:yes'><img border=0 width=353 height=430 id="_x0000_i1033" src="pic/programming_front_zh.jpg" alt="ô‹f: ô‹f: ô‹f: E:\Person\homepage\oop\pic\programming_front_zh.jpg"></span></span></span></p> <p><span style='mso-bookmark:textbook'><span lang=EN-US>I choose the book &quot;Programming: Principles and Practice using C++&quot; (PPP) as the textbook of this course because it is much suitable for beginners and especially emphasizes the practice. The book is written by &quot;the C++ farther&quot; </span></span><span lang=EN-US><a href="http://www.stroustrup.com/">Bjarne Stroustrup</a>, <span class=GramE>whose</span> another bible book &quot;C++ programming language&quot; is quite classic and can be used for professional study or as a reference handbook. </span></p> <p><span lang=EN-US>Here, I also provide an interview page of BS: <a href="http://www.royaloo.com/bjarne/bjarne.htm">Chinese version</a> and <a href="http://www.stroustrup.com/interviews.html">English version</a>.</span></p> <p><span lang=EN-US>About details of this book, see <a href="http://product.dangdang.com/product.aspx?product_id=20884731&amp;ref=search-0-A">introduce</a> and <a href="http://www.stroustrup.com/Programming/">the author's support page</a>. In particular, I provide an example and appendix (in Chinese) as following:</span></p> <ul type=disc> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l1 level1 lfo1;tab-stops:list 36.0pt'><span lang=EN-US>A <a href="pdf/cpp_ppp_scanned.pdf">scanned copy</a> of the book;</span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l1 level1 lfo1;tab-stops:list 36.0pt'><span lang=EN-US><a href="pdf/fla.pdf">Appendix A: C++ Programming Language</a>;</span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l1 level1 lfo1;tab-stops:list 36.0pt'><span lang=EN-US><a href="pdf/flb.pdf">Appendix B: C++ Standard Library</a>;</span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l1 level1 lfo1;tab-stops:list 36.0pt'><span lang=EN-US><a href="pdf/flc.pdf">Appendix C: An Introduce to Visual Studio</a>;</span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l1 level1 lfo1;tab-stops:list 36.0pt'><span lang=EN-US><a href="pdf/fld.pdf">Appendix D: Install FLTK</a>;</span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l1 level1 lfo1;tab-stops:list 36.0pt'><span lang=EN-US><a href="pdf/fle.pdf">Appendix E: GUI Implementation</a>.</span></li> </ul> <p><span lang=EN-US>Note that the book uses the current ISO standard C++, <a href="http://www.stroustrup.com/C++.html">C++98</a>, rather than the still future C++1 (C++0x) (<a href="http://zh.wikipedia.org/zh-cn/C%2B%2B0x">Wikipedia</a>, <a href="http://www.stroustrup.com/C++11FAQ.html">FAQ</a>). </span></p> <p class=styleitem2><span lang=EN-US>Supporting:</span></p> <ul type=disc> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l5 level1 lfo2;tab-stops:list 36.0pt'><span lang=EN-US>Standard library include header: <a href="support/std_lib_facilities.h">std_lib_facilities.h</a> (right click, and then save target as). Students should use &quot;plain&quot; <em><span style='font-family:‹[SO;mso-bidi-font-family: ‹[SO'>#include &quot;<span class=SpellE>std_lib_facilities.h</span>&quot;</span></em> where header file is in the same directory/folder as the .<span class=SpellE>cpp</span> files. </span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l5 level1 lfo2;tab-stops:list 36.0pt'><span lang=EN-US>About configure programming environment for different systems, see <a href="http://free.prohosting.com/holeman/cgi-bin/get_page.cgi?../cxx/sw_stack">details</a>.</span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l5 level1 lfo2;tab-stops:list 36.0pt'><span lang=EN-US><a href="support/PPP-style-rev3.pdf">PPP Style Guide</a> for the programming style's reference in excises and experiments.</span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l5 level1 lfo2;tab-stops:list 36.0pt'><span lang=EN-US>For other coding materials, visit <a href="http://www.stroustrup.com/Programming/">course supporting page</a> and find <em><span style='font-family:‹[SO;mso-bidi-font-family: ‹[SO'>Supporting code:</span></em> section.</span></li> </ul> <div class=MsoNormal align=center style='text-align:center'><span lang=EN-US> <hr size=2 width="100%" noshade style='color:teal' align=center> </span></div> <p class=styleitem><a name=slides><span lang=EN-US>Lecture Slides:</span></a></p> <p><span style='mso-bookmark:slides'><span lang=EN-US>The following slides are associated with the above textbook. Each set of slides corresponds to a book chapter: </span></span></p> <span style='mso-bookmark:slides'></span> <ul type=disc> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch0_preface.pdf">Ch0: Preface</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch1&amp;2_programming.pdf">Ch1 &amp; 2: Welcome to Programming World</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch3_object.pdf">Ch3: Objects, Types, and Values</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch4_computation.pdf">Ch4: Computation</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch5_error.pdf">Ch5: Errors</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch6_writing.pdf">Ch6: Writing a program</a>, materials: <a href="support/calculator00.cpp">First &quot;mysterious&quot; version calculator example</a> for &quot;Try This&quot;, and <a href="support/calculator02buggy.cpp">Be-bugged calculator example</a> for&nbsp; exercise in debugging</span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch7_completing.pdf">Ch7: Completing a program</a>, materials: <a href="support/calculator08buggy.cpp">Be-bugged calculator example</a> for exercise in debugging</span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch8_functions.pdf">Ch8: Technicalities: Functions, etc.</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch9_classes.pdf">Ch9: Technicalities: Classes, etc.</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch10_iostreams.pdf">Ch10: Input/Output Streams</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch11_custom_io.pdf">Ch11: Customizing I/O</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch12_display.pdf">Ch12: A Display Model</a>, In addition, we provide <a href="support/RGBColors.html">An RGB color chart</a> for use with the graphics</span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch13_graph_classes.pdf">Ch13: Graphics Classes</a>, we provide the support code: <a href="support/Graphics">Graphics and GUI</a> </span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch14_class_design.pdf">Ch14: Graphics Class Design</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch15_graphing.pdf">Ch15: Graphing Functions and Data</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch16_gui.pdf">Ch16: Graphical User Interfaces</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch17_free_store.pdf">Ch17: Vector and Free Store</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch18_arrays.pdf">Ch18: Vectors and Arrays</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch19_vector.pdf">Ch19: Vector, Template, and Exceptions</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch20_containers.pdf">Ch20: Containers and Iterators</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch21_algorithms.pdf">Ch21: Algorithms and Maps</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch22_ideals.pdf">Ch22: Ideals and History</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch23_text.pdf">Ch23: Text Manipulation</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch24_numerics.pdf">Ch24: Numerics</a>, the related implementation: <a href="support/Matrix">Matrix class</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch25_embedded.pdf">Ch25: Embedded Systems Programming</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch26_testing.pdf">Ch26: Testing</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l3 level1 lfo3;tab-stops:list 36.0pt'><span lang=EN-US><a href="ppt/ch27_C.pdf">Ch27: The C Programming Language</a></span></li> </ul> <p><span lang=EN-US>The BS's lecture slides can be downloaded <a href="http://www.stroustrup.com/Programming/lecture-slides.html">here</a>. Besides, I provide an archive (<a href="ppt/ppp_slides_en.7z">7-zip</a>) for easily downloading.</span></p> <p><span lang=EN-US>Notes: There are many excises after each chapter in book. Students should complete some of them, and <a href="http://www.stroustrup.com/Programming/Solutions/exercise_solutions.html">here</a> provide some solution.</span></p> <p><span lang=EN-US>If you find any error or have improved advise, don't hesitate to inform me via Email: <span class=SpellE>zlwang</span> AT <span class=SpellE>ustc</span> DOT <span class=SpellE>edu</span> DOT <span class=SpellE>cn</span>.</span></p> <div class=MsoNormal align=center style='text-align:center'><span lang=EN-US> <hr size=2 width="100%" noshade style='color:teal' align=center> </span></div> <p class=styleitem><a name=experiment><span lang=EN-US>Exercises &amp; Experiments:</span></a></p> <p><span style='mso-bookmark:experiment'><span lang=EN-US>Excise coding:</span></span></p> <span style='mso-bookmark:experiment'></span> <ul type=disc> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l2 level1 lfo4;tab-stops:list 36.0pt'><span lang=EN-US><a href="support/std_lib_facilities.h">std_lib_facilities.h</a> (right click, and save target as)</span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l2 level1 lfo4;tab-stops:list 36.0pt'><span lang=EN-US><a href="support/Programming-code2.zip">Complete collection of code fragments (revised)</a> (contains an automated build of FLTK for Windows) from <a href="http://www.stroustrup.com/Programming/">original course mainpage</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l2 level1 lfo4;tab-stops:list 36.0pt'><span lang=EN-US><a href="support/Graphics">Graphics and GUI support code</a> for Chapters12-16 </span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l2 level1 lfo4;tab-stops:list 36.0pt'><span lang=EN-US><a href="support/Matrix">Matrix class</a> for Chapter 24 </span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l2 level1 lfo4;tab-stops:list 36.0pt'><span lang=EN-US>FLTK source files (<a href="support/fltk-1.1.9-source.tar.gz">fltk-1.1.9-source.tar.gz</a>, <a href="support/fltk-1.1.9-source.zip">fltk-1.1.9-source.zip</a>) from <a href="http://www.fltk.org">FLTK.org</a> from which you can build the FLTK Graphical User Interface (GUI) library and toolset</span></li> </ul> <p><span lang=EN-US>Experiments list:</span></p> <ul type=disc> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l4 level1 lfo5;tab-stops:list 36.0pt'><span lang=EN-US><a href="experiment/exp1.html">Exp1: Development Environment Setting &amp; Toy Exercises</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l4 level1 lfo5;tab-stops:list 36.0pt'><span lang=EN-US><a href="experiment/exp2.html">Exp2: A Simple Calculator Program</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l4 level1 lfo5;tab-stops:list 36.0pt'><span lang=EN-US><a href="experiment/exp3.html">Exp3: Design a Series of Classes : Library</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l4 level1 lfo5;tab-stops:list 36.0pt'><span lang=EN-US><a href="experiment/exp4.html">Exp4: How to Operate File?</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l4 level1 lfo5;tab-stops:list 36.0pt'><span lang=EN-US><a href="experiment/exp5.html">Exp5: Install FLTK &amp; Drawing a Chessboard</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l4 level1 lfo5;tab-stops:list 36.0pt'><span lang=EN-US><a href="experiment/exp6.html">Exp6: Displaying Temperature Bar</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l4 level1 lfo5;tab-stops:list 36.0pt'><span lang=EN-US><a href="experiment/exp7.html">Exp7: Implementing a Smart Pointer</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l4 level1 lfo5;tab-stops:list 36.0pt'><span lang=EN-US><a href="experiment/exp8.html">Exp8: Define &amp; Test Complex Class</a></span></li> </ul> <div class=MsoNormal align=center style='text-align:center'><span lang=EN-US> <hr size=2 width="100%" noshade style='color:teal' align=center> </span></div> <div class=MsoNormal align=center style='text-align:center'><span lang=EN-US> <hr size=2 width="100%" noshade style='color:teal' align=center> </span></div> <p class=styleitem><a name=supported><span lang=EN-US>Supported materials:</span></a></p> <ul type=disc> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l0 level1 lfo6;tab-stops:list 36.0pt'><span lang=EN-US><a href="http://staff.ustc.edu.cn/~zlwang/cpp/index.html">C++ programming language</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l0 level1 lfo6;tab-stops:list 36.0pt'><span lang=EN-US><a href="http://www.stroustrup.com/Programming/">Programming: Principles and Practice Using C++</a></span></li> <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; mso-list:l0 level1 lfo6;tab-stops:list 36.0pt'><span lang=EN-US><a href="http://www.stroustrup.com/">Bjarne Stroustrup's homepage</a></span></li> </ul> <p align=center style='text-align:center'><span lang=EN-US style='font-size: 7.5pt;font-family:"Verdana","sans-serif";color:#666666'>Last Updated<span class=GramE>: </span><!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%Y-%m-%d" startspan -->2010-12-02<!--webbot bot="Timestamp" endspan i-checksum="12122" -->, Since 2010-08-18</span><span lang=EN-US> <o:p></o:p></span></p> <p align=center style='text-align:center'><!-- start http://count.knowsky.com --><span lang=EN-US><script language="JavaScript" src="http://count.knowsky.com/count2/count.asp?id=60792&sx=2&ys=19" charset="gb2312"> </script><br> <!-- Powered by http://www.knowsky.com -->Automation @ USTC ©All copyright reserved!</span></p> </div> </body> </html>