C++: Difference between revisions

155 bytes added ,  14 years ago
m
no edit summary
[unchecked revision][unchecked revision]
mNo edit summary
Line 1:
:''For a quick tutorial on getting a C++ kernel running see [[C++ bare bones]]''
One thing up front: you can do a kernel in C++. It has been done before. This page will not discuss the pros and cons, just tell you about the things you have to be aware of when doing it.
 
For an article on linkage between C++ and ASM (please ''do'' read this, so that we don't have forum topic repetition), see [[C++ to ASM linkage in GCC]].
 
Most features of C++ come "for free", i.e. require no additional supporting work to be used in kernel space. Templates, for example, do not require any additional logic; neither do classes, even when inheritance and virtual functions are involved. Other things do require runtime support. This document will first explain how to turn these features off, and then, gradually, how to implement the required support so you can turn them on again.
Anonymous user