Lec1 Welcome w24
Lec1 Welcome w24
Lec1 Welcome w24
http://web.stanford.edu/class/cs106l/
Welcome to CS 106L!
Winter 2024
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
CONTENTS
01. Introductions
http://web.stanford.edu/class/cs106l/
CONTENTS
01. Introductions
http://web.stanford.edu/class/cs106l/
I’m Haven!
I’m Fabio!
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
http://web.stanford.edu/class/cs106l/
CONTENTS
01. Introductions
http://web.stanford.edu/class/cs106l/
Asking Questions
We welcome questions!
http://web.stanford.edu/class/cs106l/
Asking Questions
We welcome questions!
http://web.stanford.edu/class/cs106l/
http://web.stanford.edu/class/cs106l/
Community Norms
● Shame-free zone
● Treat your peers and instructors with kindness and
respect
● Be curious
● Communication is key!
● Recognize we are all in-process (humility, question
posing, avoid perfectionism)
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
Guiding Principles
http://web.stanford.edu/class/cs106l/
Questions?
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
Lecture
http://web.stanford.edu/class/cs106l/
Lecture
http://web.stanford.edu/class/cs106l/
Illness
If you feel ill or are sick, for the wellbeing of yourself and others
please stay home, take care of yourself, and reach out to us -
we never want you to feel that you must attend class if you are
not feeling well!
http://web.stanford.edu/class/cs106l/
Office Hours
http://web.stanford.edu/class/cs106l/
cs106l.stanford.edu
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
Assignments
http://web.stanford.edu/class/cs106l/
Grading
How to get an S?
http://web.stanford.edu/class/cs106l/
Here are the best ways to communicate with us, in no particular order:
http://web.stanford.edu/class/cs106l/
Questions?
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
CONTENTS
01. Introductions
http://web.stanford.edu/class/cs106l/
Week Topics
Course
1 Admin, Brief Intro to C++ feature
Content
2 Initialization + References, Streams
http://web.stanford.edu/class/cs106l/
Why CS106L?
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
CS106B CS106L
http://web.stanford.edu/class/cs106l/
Why C++?
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
http://web.stanford.edu/class/cs106l/
We use it in classes…
… and more!
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
http://web.stanford.edu/class/cs106l/
Why C++?
FAST Lower-level control
Ruby
Javascript
High
Level
Python
Java
C++
C
Low
Level Assembly
Machine Code
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
What is C++?
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
int main() {
std::cout << "Hello, world!" << std::endl;
return 0;
}
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
http://web.stanford.edu/class/cs106l/
http://web.stanford.edu/class/cs106l/
http://web.stanford.edu/class/cs106l/
http://web.stanford.edu/class/cs106l/
section .data
msg db 'Hello, world!' ,0xa ;our dear string
len equ $ - msg ;length of our dear string
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
Benefits:
● Unbelievably simple instructions
● Extremely fast (when well-written)
● Complete control over your program
http://web.stanford.edu/class/cs106l/
Drawbacks:
● A LOT of code to do simple tasks
● Very hard to understand
● Extremely unportable (hard to
make work across all systems)
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
http://web.stanford.edu/class/cs106l/
http://web.stanford.edu/class/cs106l/
● No objects or classes
● Difficult to write generic code
● Tedious when writing large programs
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
http://web.stanford.edu/class/cs106l/
We are
C++ C++03 C++14 C++20 here!
C with
C++98 C++11 C++17 C++23
Classes
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
http://web.stanford.edu/class/cs106l/
http://web.stanford.edu/class/cs106l/
http://web.stanford.edu/class/cs106l/
Questions?
Welcome and Logistics
http://web.stanford.edu/class/cs106l/
http://web.stanford.edu/class/cs106l/