Introduction to C++ Programming and Graphics
C Pozrikidis
Springer, 2007
This book offers a venue for rapidly learning the C++ language by illustrating step-by-step the basic syntax, grammar, and main features, and by explaining the basic ideas behind object-oriented programming with emphasis on scientific computing and graphics.
Why this book?
Though several hundred books on C++ are available, this text is unique in several ways:
- It explains the language without unnecessary verbiage (those who have lifted C++ books without proper stretching exercises have experienced intenst pain.)
- It concisely clarifies the basic concepts underlying the notion of Object Oriented Programming (OOP).
- It demonstrates how to make a transition to C++ from another high-level language such as Fortran or Matlab.
- It discusses graphics programming based on the VOGLE, openGL, and GLUT graphics libraries.
- It explains how to call Matlab functions from C++ and thereby perform numerical computation and generate graphics.
- It serves as a ready reference with tables and appendices.
Programs
The book is accompanied by computer programs arranged in nine directories corresponding to the book chapters.To unravel the compressed tar file, please issue the command: tar xzf PROGRAMS.tgz
Graphics
To install the glut library on debian (Ubuntu) systems, issue the command: sudo apt-get install freeglut3-devTo install the gtk graphics library on debian (ubuntu) systems, issue the command: sudo apt-get install libgtk2.0-dev
The compiled VOGLE graphics library can be found in directory 08 of the programs for several Unix platforms.
Errata
Page | Courtesy of | |
---|---|---|
5 | Paragraph under "Signed integers" please change "1101" to "1011" in two places. | Eino Juhani Oltedal |
6 | Please change "Terabyte (Gbyte)" to "Terabyte (Tbyte)" | Yair Treister |
13 | Please change "is 4,294,967,296" to "is 4,294,967,295" | Joseph Roy D. North |
29 | Please change "10.3 ..." to "10.45 ..." | Yair Treister |
60 | Please change "date" to "data" | |
84 | Selection sort: please insert a line containing "{" after the first "for" loop; please replace the parentheses with square brackets in three places at the last three lines. | Ambrose Chongo |
95 | Please change "3.14157" to "3.14159". Please change "pi = 3.14157" to "3.14159" | Yair Treister |
109 | Please replace "maxal" with "max_alias" | Ambrose Chongo |
118 | Please replace "void kalaboki()" with "int kalaboki()" | Ambrose Chongo |