delegate void dele<T>( T o ) where T : A; 
void commonFunc<T>( int para1, int para2, dele<T> callFunc ) where T : A;  
commonFunc<B>( 1, 2, func1 ); 

きちゃないな