Difference between revisions of "One-Day Scientific C++ Class"
Jump to navigation
Jump to search
m (moved Videos of the One-Day Scientific C++ Class to One-Day Scientific C++ Class: Also has slides and source code.) |
|||
Line 1: | Line 1: | ||
+ | __TOC__ | ||
+ | == Goal == | ||
This was a full-day course given on March 15, 2011 at SciNet, covering using C++ for scientific programming, with a focus on those features that are useful for scientific software development. We took to C-to-C++ route, so | This was a full-day course given on March 15, 2011 at SciNet, covering using C++ for scientific programming, with a focus on those features that are useful for scientific software development. We took to C-to-C++ route, so | ||
familiarity with C, in particular with pointers, was a prerequisite. | familiarity with C, in particular with pointers, was a prerequisite. | ||
== Slides (PDF) == | == Slides (PDF) == | ||
+ | # [[Media:CppIntroduction.pdf | Introduction: programming strategies and brief history of C++]] | ||
+ | # [[Media:CppBasicReview.pdf | A basic review of C]] | ||
+ | # [[Media:CppRunningExample.pdf| Running example]] | ||
+ | # [[Media:CppNice.pdf | The nice features of C++]] | ||
+ | # [[Media:CppClasses.pdf | Big C++: classes]] | ||
+ | # [[Media:CppPolymorphism.pdf | Big C++: polymorphism]] | ||
+ | # [[Media:CppInheritance.pdf | Big C++: Inheritance]] | ||
+ | # [[Media:CppPolyInheritance.pdf | Big C++: polymorphism in inheritance]] | ||
+ | # [[Media:CppTemplates.pdf | Big C++: Generic programming with templates]] | ||
+ | # [[Media:CppLibraries.pdf | Useful libraries]] | ||
+ | Or: | ||
*[https://support.scinet.utoronto.ca/wiki/images/4/49/Scientific-c%2B%2B.pdf Complete set of slides] | *[https://support.scinet.utoronto.ca/wiki/images/4/49/Scientific-c%2B%2B.pdf Complete set of slides] | ||
== Videos == | == Videos == | ||
− | # [https://support.scinet.utoronto.ca/CourseVideo/C++course/morning_intro/morning_intro.mp4 Introduction] | + | # [https://support.scinet.utoronto.ca/CourseVideo/C++course/morning_intro/morning_intro.mp4 Introduction: programming strategies and brief history of C++] |
− | # [https://support.scinet.utoronto.ca/CourseVideo/C++course/morning_Creview/morning_Creview.mp4 A basic | + | # [https://support.scinet.utoronto.ca/CourseVideo/C++course/morning_Creview/morning_Creview.mp4 A basic review of C] |
# [https://support.scinet.utoronto.ca/CourseVideo/C++course/morning_Cexample/morning_Cexample.mp4 Running example] | # [https://support.scinet.utoronto.ca/CourseVideo/C++course/morning_Cexample/morning_Cexample.mp4 Running example] | ||
# [https://support.scinet.utoronto.ca/CourseVideo/C++course/morning_cpp_basics/morning_cpp_basics.mp4 The nice features of C++] | # [https://support.scinet.utoronto.ca/CourseVideo/C++course/morning_cpp_basics/morning_cpp_basics.mp4 The nice features of C++] | ||
Line 13: | Line 26: | ||
# [https://support.scinet.utoronto.ca/CourseVideo/C++course/afternoon_cpp_inheritance/afternoon_cpp_inheritance.mp4 Big C++: Inheritance] | # [https://support.scinet.utoronto.ca/CourseVideo/C++course/afternoon_cpp_inheritance/afternoon_cpp_inheritance.mp4 Big C++: Inheritance] | ||
# [https://support.scinet.utoronto.ca/CourseVideo/C++course/afternoon_cpp_virtual/afternoon_cpp_virtual.mp4 Big C++: polymorphism in inheritance] | # [https://support.scinet.utoronto.ca/CourseVideo/C++course/afternoon_cpp_virtual/afternoon_cpp_virtual.mp4 Big C++: polymorphism in inheritance] | ||
− | # [https://support.scinet.utoronto.ca/CourseVideo/C++course/afternoon_cpp_templates/afternoon_cpp_templates.mp4 Big C++: templates] | + | # [https://support.scinet.utoronto.ca/CourseVideo/C++course/afternoon_cpp_templates/afternoon_cpp_templates.mp4 Big C++: Generic programming with templates] |
# [https://support.scinet.utoronto.ca/CourseVideo/C++course/afternoon_cpp_libraries/afternoon_cpp_libraries.mp4 Useful libraries] | # [https://support.scinet.utoronto.ca/CourseVideo/C++course/afternoon_cpp_libraries/afternoon_cpp_libraries.mp4 Useful libraries] | ||
== Code == | == Code == | ||
* [https://support.scinet.utoronto.ca/wiki/images/3/38/Scinetcppexamples.tgz Hands-on example code] | * [https://support.scinet.utoronto.ca/wiki/images/3/38/Scinetcppexamples.tgz Hands-on example code] |
Revision as of 16:48, 2 June 2011
Goal
This was a full-day course given on March 15, 2011 at SciNet, covering using C++ for scientific programming, with a focus on those features that are useful for scientific software development. We took to C-to-C++ route, so familiarity with C, in particular with pointers, was a prerequisite.
Slides (PDF)
- Introduction: programming strategies and brief history of C++
- A basic review of C
- Running example
- The nice features of C++
- Big C++: classes
- Big C++: polymorphism
- Big C++: Inheritance
- Big C++: polymorphism in inheritance
- Big C++: Generic programming with templates
- Useful libraries
Or:
Videos
- Introduction: programming strategies and brief history of C++
- A basic review of C
- Running example
- The nice features of C++
- Big C++: classes
- Big C++: polymorphism
- Big C++: Inheritance
- Big C++: polymorphism in inheritance
- Big C++: Generic programming with templates
- Useful libraries