Tài liệu tự học chương trình C++

Trong khi nhiều mã nguồn viết trong C sẽ được dịch như là ngôn ngữ C++ mà không gặp trở ngại gì thì cũng có một số khác nhau giữa hai ngôn ngữ đã ngăn không cho C++ trở thành (ngôn ngữ) mở rộng của C. Chẳng hạn như C++ cấm gọi hàm main bên trong một chương trình, trong khi điều này hợp lệ trong C. Thêm vào đó C++ có nhiều giới hạn trong một số tính năng như là nó thiếu sự chuyển kiểu mặc định giữa các kiểu con trỏ không liên hệ nhau và cũng không cho phép một hàm được sử dụng nếu chưa khai báo.