3

アスペクト指向プログラミング用の優れた ANSI C ライブラリを探しています。

いくつかの望ましい機能は次のとおりです。

  • ターゲット関数の引数へのアクセスと変更。
  • 目的の関数を返させ、戻り値を制御します。

aspeCt C ( https://sites.google.com/a/gapp.msrg.utoronto.ca/aspectc/home ) を見つけました。ドキュメントを読むと、必要なものがすべて揃っているように見えますが、指示に従って実行すると、 make をコンパイルしてテストに合格すると、テストは失敗します。

代替手段はありますか?

4

1 に答える 1

1

AspectC ++は、 AspectJのアプローチを C/C++ に 拡張するプロジェクトです。

たとえば、Aspect を使用した単純な C プログラムが必要な場合:

int main() {
    printf("world");

}

そして、aspect.cc が作成されます。

before(): execution(int main()) {
    printf("Hello ");
}

after(): execution(int main()) {
    printf(" from AspectC ! \n");
}

両方をコンパイルします> acc hello.ac world.mc

結果は次のとおりです。

gcc hello.c world.c
>./a.out
 Hello world from AspectC !
于 2013-01-24T17:02:35.253 に答える