... and your code gets untangled

The Home of AspectC++

About the Project

The success of Aspect-Oriented Software Development rises and falls with user-friendly tool support. With AspectJ® ¹ the first complete and powerful language extension for AOP has been created. With the AspectC++ project we extend the AspectJ approach to C/C++. It is a set of C++ language extensions to facilitate aspect-oriented programming with C/C++. An implementation of an AspectC++ compiler is available for download from our download page.

¹ AspectJ is a trademark of Xerox Corporation.

Latest News

The email addresses are fully functional again. Sorry for the inconvenience.
06-Apr-2014 email addresses are currently not working. This especially affects our mailing lists. The problems are caused by our ISP, but we doing our best to find a quick solution.
New infrastructure online: New website; new bugzilla version; mailing lists migrated.
AspectC++ Release 1.2 is available at the Download page. It has many parser and performance improvements as well as a new project repository format with far more detailed information on the project. It can be used for pointcut expression evaluation on the command line with the new --expr option.
AspectC++ Release 1.1 is available at the Download page. It has a faster and much better parser and supports weaving in macro-generated code.
Zygmunt Ptak provides an AspectC++ package for ARCHLINUX.
Riku Halonen from Nokia has posted a very nice blog on using AspectC++ for Qt development on
An application note on "Using AspectC++ for Qt Application Development" (including example code) has been uploaded to the Documentation page.