• C++ Programming for Financial Engineering
    Highly recommended by thousands of MFE students. Covers essential C++ topics with applications to financial engineering. Learn more Join!
    Python for Finance with Intro to Data Science
    Gain practical understanding of Python to read, understand, and write professional Python code for your first day on the job. Learn more Join!
    An Intuition-Based Options Primer for FE
    Ideal for entry level positions interviews and graduate studies, specializing in options trading arbitrage and options valuation models. Learn more Join!

C++ Course

DanM

Math Student
Joined
8/1/09
Messages
179
Points
28
Given that I need to significantly enhance my C++ skills between now and when I apply for MFE (I've only taken an intro course) I decided to take another C++ course next semester. Just wondering what some of you think of this, in terms of how well it would prepare me for MFE:

OBJECT ORIENTED PROGRAMMING USING C++

The course uses the C++ programming language as a tool to implement OOP concepts. The OOP
concepts such as Classes, Member and Friend Functions, Constructor and Destructor Functions,
Operator Overloading, Inheritance, Composition, Virtual Functions and Polymorphism, Stream I/O,
Templates and Exception Handling are covered, as well as the OOP methods.

1. Review of C++ Non-Object Oriented Techniques
- C++ I/O
- Namespaces
- C++ function enhancements
- Pointers and references
- Dynamic memory allocation
2. Introduction To OOP
- Object-oriented programming vs. structured programming
3. Classes
- Defining classes
- Encapsulation
- Access specifiers
- Member functions
- Objects
- Constructor and destructor functions
- Friend functions and friend classes
- Using​
this pointer
- Static class members
4. Operator Overloading
- Fundamentals of operator overloading
- Operator functions as class members vs. as friend functions
- Overloading unary operators
- Overloading binary operators
- Overloading stream-insertion and stream-extraction operators
5. Inheritance and Composition
- Introduction to inheritance
- Base and derived classes
- Single and multiple inheritance
- Protected members
- Constructors, destructors and inheritance
- Composition
- Using composition and inheritance
6. Virtual Functions
- Introduction to Virtual Functions
- Abstract base classes and concrete classes

- Polymorphism
7. File I/O
- Steps in file I/O processing
- Sequential files
- Random access files
8. Templates
- Function templates
- Class templates
- The STL library
9. Exception Handling
- The basics of C++ exception handling
- Try blocks
- Throwing, catching and rethrowing an exception
- Constructors, destructors and exception handling​
- Exceptions and inheritance
 
This looks like a very good beginning to OOP concepts. C++ is a good ground to start off with OOP. I suggest you start coding too because that is the only way you would get the hang of it. Courses can only give you knowledge but it is far more than that. Start coding and you would be good.
 
I took an intro C++ course also. My teacher moved really fast, as in we covered functions, loops, error handling, if/else, relational... etc in the first two weeks. The rest of the course consisted of classes, I/O, polymorphism, virtual functions, overloading, inheritance ++ more. Even at the end the teacher said we had gotten well into intermediate C ++. Some really cool stuff, but a little more intro at the cost of some intermediate would have done me a world of good :/.

Warning: pointers don't like you. They enjoy giving you migraines.
 
I took an intro C++ course also. My teacher moved really fast, as in we covered functions, loops, error handling, if/else, relational... etc in the first two weeks. The rest of the course consisted of classes, I/O, polymorphism, virtual functions, overloading, inheritance ++ more. Even at the end the teacher said we had gotten well into intermediate C ++. Some really cool stuff, but a little more intro at the cost of some intermediate would have done me a world of good :/.

Warning: pointers don't like you. They enjoy giving you migraines
.

I think C++ is NOT the place to learn pointers. You should already be somewhat confident about them (i.e. when you learn C). There is way too many new concepts to learn at C++ level to be worried about basics of pointers.

If you can allocate/de-allocate memory , can pass by reference , handle dynamic memory allocation, I think you are good to go.
 
I agree. And when I say 'intro' I mean my first programming class ever. In retrospect, I think learning the basics in VBA, or even MATLAB might be the best approach.
 
I've used VBA for modeling (I have Sengupta's and Benninga's books on Financial modeling in Excel/VBA and I've done most of the exercises in them). Other then that, I've used Fortran, Maple, and Matlab for some of my math courses.

I shouldn't say I took an "intro C++ course" - it was mostly C, and C++ was covered very briefly at the end. There's a more advanced C++ course for which the course I posted in the OP is a prereq. It sounds interesting.
 
Back
Top