|
|
|||||||||
|
|||||||||
|
|
PPCSYS 08 - 68KコードのPPCへの移植とNewRoutineDescriptor(1-June-96)
Q: 68KコードをPPCに移植しようとしています。ModalDialogで定義されているカスタム関数を使用しています。そのときのコードは以下のようでした。
ModalDialog((ModalFilterProcPtr) MyFilter, &itemNum); カスタム関数を RoutineDescriptorへのポインタ型に変換できない、とコンパイラがエラーを返してきたので、RoutineDescriptorにキャストしました。
ModalDialog((RoutineDescriptor*) MyFilter, &itemNum); これでコンパイル時とリンク時のエラーはなくなりましたが、プログラムを実行するとタイプ3のエラーでクラッシュしてしまいます。 これを正しく実装するには、どの様にしたらよいのでしょうか?
A: UPPにキャストするのではなく、 ModalFilterUPP myFilterUPP; myFilterUPP = NewModalFilterProc(MyFilter); ModalDialog(myFilterUPP, &itemNum);
以下もご参照ください。
[ Technical Q&A's : PowerPC : PowerPC Systems : PPCSYS008 ] |
|