Coding Environment
Generally, software developers do their development work in some sort of "integrated development environment" (IDE), which will have many built-in tools for editing, compiling, running, and debugging programs. We recommend that you use the IDE known as Code::Blocks, which is freely available.
You will also need to download the GNU C++ compiler (GCC). For Windows machines, you should use the MinGW version of it; you can install the version of Code::Blocks that comes bundled with MinGW, or follow the instructions here. If you're on a Mac, the easiest thing to do is install Xcode, which comes bundled with GCC. Xcode can be downloaded here (registration with Apple is required). If you're using Linux, you probably don't need our help on this one, and your operating system probably came with GCC anyway.
There are many IDEs available besides Code::Blocks, and you may use any of them if you so desire. Another freely available one is Eclipse, which is very powerful and works on all operating systems, though many have had technical problems in the past with installing/using it for C++. (We recommend that you download the edition of Eclipse for C/C++ developers, but if you already have a different version of Eclipse, you can install the C/C++ add-ons through Eclipse's add-on manager.) On a Mac, you can simply use the Xcode IDE; on Windows you can use Microsoft Visual Studio on Windows (registration with Microsoft DreamSpark required). While all of these will serve the purpose well, we cannot guarantee that we will be able to help you with any problems that arise in the course of using them.
Instructor(s)
Jesse Dunietz
Geza Kovacs
John Marrero
MIT Course Number
6.096
As Taught In
January IAP 2011
Level
Undergraduate
This is a fast-paced introductory course to the C++ programming language. It is intended for those with little programming background, though prior programming experience will make it easier, and those with previous experience will still learn C++-specific constructs and concepts.
1 Introduction - (PDF)
2 Flow of control - (PDF)
5 Pointers - (PDF)
6 Classes - (PDF)
7 Object-oriented programming - (PDF)
8 Memory management - (PDF)
9 Advanced topics I - (PDF)
10 Advanced topics II - (PDF)
Couse එකට ඕන Course Materialsටික2 Flow of control - (PDF)
3 Functions - (PDF)
4 Arrays and strings - (PDF)
5 Pointers - (PDF)
6 Classes - (PDF)
7 Object-oriented programming - (PDF)
8 Memory management - (PDF)
9 Advanced topics I - (PDF)
10 Advanced topics II - (PDF)
ASSIGNMENTS
Problem set 1 (PDF) (SOLUTIONS PDF) LECTURES 1-2
Problem set 2 (PDF) (SOLUTIONS PDF) LECTURES 3-5
Problem set 3 (PDF) (SOLUTIONS PDF) LECTURES 6-8
Problem set 4 (PDF) (SOLUTIONS PDF) LECTURES 9-10
Final project (PDF)