Web Resources:
CppReference.com,
CPlusPlus.com,
C++ TechLinks
CppCon - 2014, Going Native 2013
Herb Sutter's Blog, Herb Sutter on C++11, Herb Sutter keynote - Going Native 2012
Scott Meyer's Blog, S.M. on thread suspension, S.M.: C++11 Sampler
Stroustrup's Home Page, Code Project, Boost Library
CppCon - 2014, Going Native 2013
Herb Sutter's Blog, Herb Sutter on C++11, Herb Sutter keynote - Going Native 2012
Scott Meyer's Blog, S.M. on thread suspension, S.M.: C++11 Sampler
Stroustrup's Home Page, Code Project, Boost Library
Content:
This lecture provides some help with Project #1, then surveys the C++ Language.
This semester I will be linking all lecture videos only on the video page. You will find the first
video, for Lecture #1, there now. I will put links for this week's Lecture #2 and Help Session on that page this weekend.
-
Readings for Lecture #2
Text: chapter 1
Project #1
C vs. C++, C++ Classes, Templates, C++11
Compilation, Computation, and Memory models, ppt
C++ Survival Guide, doc
-
Glossary of Terms
-
Scope:
Any set of code statements enclosed in braces "{" and "}". Scopes come in two forms:
Function scopes and all the control scopes they contain are executable scopes.
Namespace, class, struct, and enum scopes are declaration scopes. -
Stack Frame:
Memory temporarily allocated from the program's stack to an executable scope.
Allocation occurs when the program's thread of execution enters that scope.
The stack frame holds a function's parameters and return value and any local data declared in that scope.
This allocation becomes invalid when the thread of execution leaves it's scope.
-
Scope:
-
Syllabus
Describes topics to be covered, reading material for you to digest before coming to class, and due dates for the assigned projects. -
Help Session:
The Instructor's Friday morning Help Session will normally start at 9:00 am in CST 4-201. -
Getting free copy of Visual Studio 2015 from MSDN.
from DreamSpark.
You may alternately download and install the free Visual Studio 2015 Community Edition. -
Problem with Dependencies
Motivation for a lot of what we do in this course. -
Project #1:
Project #1
Project #1 Helpers
Dissecting the Project #1 statement - What is hard? What is easy? Suggestions. Design Concept #3: Application-side vs. Solution-side
Design Concept #5: Top-Down Design
Design Concept #6: Bottom-Up Design
Design Note #2: Package Structure
-
Survey of C++ Language
- Programming Languages
- Getting Started
- C vs. C++, C++ Classes, Templates, C++11
-
Why C++? Why not C#?,
ppt
C++, an assessment, ppt - Survey of Language features, ppt
- Compilation, Computation, and Memory models, ppt
- C++ Keywords
- C++ operators
-
C++ Survival Guide,
doc
A quick tour of syntax for pointers, references, classes, strings, streams, and vectors. - classes and class relationships - high level view, doc
- Class and Object relationships, Implemented in code
- class relationships - more details
- class layout
- C++11 changes and additions
- Herb Sutter on C++11
- CppReference.com
- Project Helper code
-
basic C++ code demos
Shows how to implement and use simple classes, derived classes, and templatized classes. -
first look at STL notes
The Standard Template Library (STL) provides a set of useful containers, iterators, and algorithms. You can use the containers without knowing too much about how templates work. We will get to that soon. -
basic STL code demos
Shows how easy it is to use vectors, lists, sets, and maps. - Visual Studio IDE:
- Review Syllabus, Review Getting Started
- Software Design