├── .gitignore ├── Chapter 00 - Foreword └── main.cpp ├── Chapter 01 - Hello World └── main.cpp ├── Chapter 02 - Types and Variables └── main.cpp ├── Chapter 03 - If └── main.cpp ├── Chapter 04 - While └── main.cpp ├── Chapter 05 - Vectors └── main.cpp ├── Chapter 06 - For └── main.cpp ├── Chapter 07 - Functions └── main.cpp ├── Chapter 08 - Using Multiple Files ├── main.cpp ├── vector_algos.cpp └── vector_algos.hpp ├── Chapter 09 - Iterators ├── main.cpp ├── vector_algos.cpp └── vector_algos.hpp ├── Chapter 10 - References ├── main.cpp ├── vector_algos.cpp └── vector_algos.hpp ├── Chapter 11 - Standard Algorithms ├── main.cpp ├── vector_algos.cpp └── vector_algos.hpp ├── Chapter 12 - Function Templates ├── main.cpp └── vector_algos.hpp ├── Chapter 13 - Exceptions ├── io.hpp ├── main.cpp ├── math.cpp └── math.hpp ├── Chapter 14 - Project Overview └── main.cpp ├── Chapter 15 - Basic Structs ├── lex.cpp ├── lex.hpp ├── main.cpp └── token.hpp ├── Chapter 16 - Basic Operator Overloading ├── lex.cpp ├── lex.hpp ├── main.cpp ├── token.cpp └── token.hpp ├── Chapter 17 - Member Functions ├── lexer.cpp ├── lexer.hpp ├── main.cpp ├── token.cpp └── token.hpp ├── Chapter 18 - Recursion ├── lexer.cpp ├── lexer.hpp ├── main.cpp ├── parser.cpp ├── parser.hpp ├── token.cpp └── token.hpp ├── Chapter 19 - Inheritance ├── expression.hpp ├── lexer.cpp ├── lexer.hpp ├── list_expr.cpp ├── list_expr.hpp ├── main.cpp ├── number_expr.cpp ├── number_expr.hpp ├── parser.cpp ├── parser.hpp ├── token.cpp ├── token.hpp ├── variable_expr.cpp └── variable_expr.hpp ├── Chapter 20 - Function Objects ├── builtin_operations.cpp ├── builtin_operations.hpp ├── expression.hpp ├── lexer.cpp ├── lexer.hpp ├── list_expr.cpp ├── list_expr.hpp ├── main.cpp ├── number_expr.cpp ├── number_expr.hpp ├── parser.cpp ├── parser.hpp ├── symbol_table.cpp ├── symbol_table.hpp ├── token.cpp ├── token.hpp ├── variable_expr.cpp └── variable_expr.hpp ├── README.md └── cpp_2_markdown.py /.gitignore: -------------------------------------------------------------------------------- 1 | out 2 | *.o 3 | *.swp 4 | build.sh 5 | 6 | -------------------------------------------------------------------------------- /Chapter 00 - Foreword/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 00 - Foreword/main.cpp -------------------------------------------------------------------------------- /Chapter 01 - Hello World/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 01 - Hello World/main.cpp -------------------------------------------------------------------------------- /Chapter 02 - Types and Variables/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 02 - Types and Variables/main.cpp -------------------------------------------------------------------------------- /Chapter 03 - If/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 03 - If/main.cpp -------------------------------------------------------------------------------- /Chapter 04 - While/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 04 - While/main.cpp -------------------------------------------------------------------------------- /Chapter 05 - Vectors/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 05 - Vectors/main.cpp -------------------------------------------------------------------------------- /Chapter 06 - For/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 06 - For/main.cpp -------------------------------------------------------------------------------- /Chapter 07 - Functions/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 07 - Functions/main.cpp -------------------------------------------------------------------------------- /Chapter 08 - Using Multiple Files/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 08 - Using Multiple Files/main.cpp -------------------------------------------------------------------------------- /Chapter 08 - Using Multiple Files/vector_algos.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 08 - Using Multiple Files/vector_algos.cpp -------------------------------------------------------------------------------- /Chapter 08 - Using Multiple Files/vector_algos.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 08 - Using Multiple Files/vector_algos.hpp -------------------------------------------------------------------------------- /Chapter 09 - Iterators/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 09 - Iterators/main.cpp -------------------------------------------------------------------------------- /Chapter 09 - Iterators/vector_algos.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 09 - Iterators/vector_algos.cpp -------------------------------------------------------------------------------- /Chapter 09 - Iterators/vector_algos.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 09 - Iterators/vector_algos.hpp -------------------------------------------------------------------------------- /Chapter 10 - References/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 10 - References/main.cpp -------------------------------------------------------------------------------- /Chapter 10 - References/vector_algos.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 10 - References/vector_algos.cpp -------------------------------------------------------------------------------- /Chapter 10 - References/vector_algos.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 10 - References/vector_algos.hpp -------------------------------------------------------------------------------- /Chapter 11 - Standard Algorithms/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 11 - Standard Algorithms/main.cpp -------------------------------------------------------------------------------- /Chapter 11 - Standard Algorithms/vector_algos.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 11 - Standard Algorithms/vector_algos.cpp -------------------------------------------------------------------------------- /Chapter 11 - Standard Algorithms/vector_algos.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 11 - Standard Algorithms/vector_algos.hpp -------------------------------------------------------------------------------- /Chapter 12 - Function Templates/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 12 - Function Templates/main.cpp -------------------------------------------------------------------------------- /Chapter 12 - Function Templates/vector_algos.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 12 - Function Templates/vector_algos.hpp -------------------------------------------------------------------------------- /Chapter 13 - Exceptions/io.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 13 - Exceptions/io.hpp -------------------------------------------------------------------------------- /Chapter 13 - Exceptions/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 13 - Exceptions/main.cpp -------------------------------------------------------------------------------- /Chapter 13 - Exceptions/math.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 13 - Exceptions/math.cpp -------------------------------------------------------------------------------- /Chapter 13 - Exceptions/math.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 13 - Exceptions/math.hpp -------------------------------------------------------------------------------- /Chapter 14 - Project Overview/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 14 - Project Overview/main.cpp -------------------------------------------------------------------------------- /Chapter 15 - Basic Structs/lex.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 15 - Basic Structs/lex.cpp -------------------------------------------------------------------------------- /Chapter 15 - Basic Structs/lex.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 15 - Basic Structs/lex.hpp -------------------------------------------------------------------------------- /Chapter 15 - Basic Structs/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 15 - Basic Structs/main.cpp -------------------------------------------------------------------------------- /Chapter 15 - Basic Structs/token.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 15 - Basic Structs/token.hpp -------------------------------------------------------------------------------- /Chapter 16 - Basic Operator Overloading/lex.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 16 - Basic Operator Overloading/lex.cpp -------------------------------------------------------------------------------- /Chapter 16 - Basic Operator Overloading/lex.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 16 - Basic Operator Overloading/lex.hpp -------------------------------------------------------------------------------- /Chapter 16 - Basic Operator Overloading/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 16 - Basic Operator Overloading/main.cpp -------------------------------------------------------------------------------- /Chapter 16 - Basic Operator Overloading/token.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 16 - Basic Operator Overloading/token.cpp -------------------------------------------------------------------------------- /Chapter 16 - Basic Operator Overloading/token.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 16 - Basic Operator Overloading/token.hpp -------------------------------------------------------------------------------- /Chapter 17 - Member Functions/lexer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 17 - Member Functions/lexer.cpp -------------------------------------------------------------------------------- /Chapter 17 - Member Functions/lexer.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 17 - Member Functions/lexer.hpp -------------------------------------------------------------------------------- /Chapter 17 - Member Functions/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 17 - Member Functions/main.cpp -------------------------------------------------------------------------------- /Chapter 17 - Member Functions/token.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 17 - Member Functions/token.cpp -------------------------------------------------------------------------------- /Chapter 17 - Member Functions/token.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 17 - Member Functions/token.hpp -------------------------------------------------------------------------------- /Chapter 18 - Recursion/lexer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 18 - Recursion/lexer.cpp -------------------------------------------------------------------------------- /Chapter 18 - Recursion/lexer.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 18 - Recursion/lexer.hpp -------------------------------------------------------------------------------- /Chapter 18 - Recursion/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 18 - Recursion/main.cpp -------------------------------------------------------------------------------- /Chapter 18 - Recursion/parser.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 18 - Recursion/parser.cpp -------------------------------------------------------------------------------- /Chapter 18 - Recursion/parser.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 18 - Recursion/parser.hpp -------------------------------------------------------------------------------- /Chapter 18 - Recursion/token.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 18 - Recursion/token.cpp -------------------------------------------------------------------------------- /Chapter 18 - Recursion/token.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 18 - Recursion/token.hpp -------------------------------------------------------------------------------- /Chapter 19 - Inheritance/expression.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 19 - Inheritance/expression.hpp -------------------------------------------------------------------------------- /Chapter 19 - Inheritance/lexer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 19 - Inheritance/lexer.cpp -------------------------------------------------------------------------------- /Chapter 19 - Inheritance/lexer.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 19 - Inheritance/lexer.hpp -------------------------------------------------------------------------------- /Chapter 19 - Inheritance/list_expr.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 19 - Inheritance/list_expr.cpp -------------------------------------------------------------------------------- /Chapter 19 - Inheritance/list_expr.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 19 - Inheritance/list_expr.hpp -------------------------------------------------------------------------------- /Chapter 19 - Inheritance/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 19 - Inheritance/main.cpp -------------------------------------------------------------------------------- /Chapter 19 - Inheritance/number_expr.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 19 - Inheritance/number_expr.cpp -------------------------------------------------------------------------------- /Chapter 19 - Inheritance/number_expr.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 19 - Inheritance/number_expr.hpp -------------------------------------------------------------------------------- /Chapter 19 - Inheritance/parser.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 19 - Inheritance/parser.cpp -------------------------------------------------------------------------------- /Chapter 19 - Inheritance/parser.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 19 - Inheritance/parser.hpp -------------------------------------------------------------------------------- /Chapter 19 - Inheritance/token.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 19 - Inheritance/token.cpp -------------------------------------------------------------------------------- /Chapter 19 - Inheritance/token.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 19 - Inheritance/token.hpp -------------------------------------------------------------------------------- /Chapter 19 - Inheritance/variable_expr.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 19 - Inheritance/variable_expr.cpp -------------------------------------------------------------------------------- /Chapter 19 - Inheritance/variable_expr.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 19 - Inheritance/variable_expr.hpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/builtin_operations.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/builtin_operations.cpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/builtin_operations.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/builtin_operations.hpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/expression.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/expression.hpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/lexer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/lexer.cpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/lexer.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/lexer.hpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/list_expr.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/list_expr.cpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/list_expr.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/list_expr.hpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/main.cpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/number_expr.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/number_expr.cpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/number_expr.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/number_expr.hpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/parser.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/parser.cpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/parser.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/parser.hpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/symbol_table.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/symbol_table.cpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/symbol_table.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/symbol_table.hpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/token.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/token.cpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/token.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/token.hpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/variable_expr.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/variable_expr.cpp -------------------------------------------------------------------------------- /Chapter 20 - Function Objects/variable_expr.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/Chapter 20 - Function Objects/variable_expr.hpp -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/README.md -------------------------------------------------------------------------------- /cpp_2_markdown.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jesyspa/linear-cpp/HEAD/cpp_2_markdown.py --------------------------------------------------------------------------------