AspectC++
Перейти к навигации
Перейти к поиску
AspectC++ | |
---|---|
Класс языка | аспектно-ориентированный |
Лицензия | GPL 2+ |
Сайт | aspectc.org |
ОС | Кроссплатформенный |
AspectC++ — аспектно-ориентированное расширение языка C++[1], программа, написанная на C++ является валидной программой на AspectC++[2]. По синтаксису и семантике похож на AspectJ[2][3]. Существует свободный транслятор в язык C++.
Пример
[править | править код]aspect Tracer
{
advice call("% %Iter::Reset(...)") : before()
{
cerr << "about to call Iter::Reset for " << JoinPoint::signature() << endl;
}
};
Tracer выведет сообщение перед каждым вызовом Reset
для классов, заканчивающихся на Iter
.
См. также
[править | править код]Примечания
[править | править код]- ↑ AspectC++ Publications (англ.). Дата обращения: 30 июня 2018. Архивировано 3 сентября 2018 года.
- ↑ 1 2 Hamido Fujita, Mohamed Mejri. New Trends in Software Methodologies, Tools and Techniques: Proceedings of .... — 2005. — ISBN 1586035568.
- ↑ Awais Rashid. Transactions on Aspect-Oriented Software Development II: Focus: AOP Systems ... (англ.). Дата обращения: 16 июня 2022. Архивировано 16 июня 2022 года.
Ссылки
[править | править код]- AspectC++ Home Page
- Olaf Spinczyk, Andreas Gal, Wolfgang Schröder-Preikschat. AspectC++: an aspect-oriented extension to the C++ programming language // Proceedings of the Fortieth International Conference on Tools Pacific: Objects for internet, mobile and embedded applications. — AUS: Australian Computer Society, Inc., 2002-02-01. — С. 53–60. — ISBN 978-0-909925-88-8. — doi:10.5555/564092.564100.
- Olaf Spinczyk, Daniel Lohmann. The design and implementation of AspectC++ (англ.) // Knowledge-Based Systems. — 2007-10-01. — Vol. 20, iss. 7. — P. 636–651. — ISSN 0950-7051. — doi:10.1016/j.knosys.2007.05.004.
- AspectC++ Add-In: Aspect-oriented programming with Microsoft® Visual Studio .