2

Apple の SpeakHere デモを出発点として使用して、レベル メーターの代わりに音声波形を実装したいと考えています。GLLevelMeter に加えて、ObjC クラスである別のビュー、SoundWaveView を追加し、AQLevelMeter.mm クラスでその実装をモデル化しました。

ファイルに「.mm」という名前を付ける必要があることがわかった後、コードはコンパイルされますが、実行時に MeterTable オブジェクトの EXC_BAD_ACCESS でクラッシュします。このオブジェクトをデバッガーで出力すると、次のようになります。

error: instance method 'setMeterTable:' has a different number of parameters in different translation units (0 vs. 1)
error: instance method 'setMeterTable:' has a different number of parameters in different translation units (0 vs. 1)
note: instance method 'setMeterTable:' also declared here
note: instance method 'setMeterTable:' also declared here
error: 2 errors parsing expression

AQLevelMeter.mm (Apple) と SoundWaveView.mm (私のもの) の両方に MeterTable.h を含めると重複が発生するのではないかと思いますが、.h をインポートせずにクラスから MeterTable にアクセスするにはどうすればよいですか??

4

1 に答える 1

1

厄介なポインタをすべて初期化してください。または、心配が少ない別の言語を選択してください(申し訳ありませんが、抵抗できませんでした)。

于 2012-12-12T10:48:47.347 に答える