1

すべて、XCodeプロジェクトに.hファイルだけで.mmファイルを作成し、そこに次のコードを配置しました。

#pragma once
class Speech
{
public:
    Speech();
private:
    NSSpeechSynthesizer *m_speech;
};

#import <AppKit/NSSpeechSynthesizer.h>
#include "speech.h"

Speech::Speech()
{
     m_speech = [NSSpeechSynthesizer new];
}

コンパイル中にエラーが発生しました:「ISO C++ はタイプのない NSSpeechSynthesizer の宣言を禁止しています」。

どういうわけか NSSpeechSynthesizer.h ファイルを含める必要がありますが、何を試しても何も機能しません。

誰か助けてくれませんか?

[編集]どうにかしてヘッダーへのパスをXCodeで使用できるようにするか、適切なフレームワークを使用することをXCodeに認識させる必要があるようです.. [/編集]

4

1 に答える 1

0

NSSpeechSynthesizer純粋なObjective-Cソリューションの場合と同じように、前方宣言を試してください。

#pragma once
class NSSpeechSynthesizer;    // Added
class Speech
{
public:
    Speech();
private:
    NSSpeechSynthesizer *m_speech;
};
于 2012-07-03T12:00:10.413 に答える