C++ 对于';没有可见的@界面;NSFontManager';声明选择器';fontpanel:';

C++ 对于';没有可见的@界面;NSFontManager';声明选择器';fontpanel:';,c++,xcode,cocoa,C++,Xcode,Cocoa,全部, 以下代码: 在fontpropertypage.cpp中: #import "AppKit/AppKit.h" CFontPropertyPage::CFontPropertyPage() { m_font = font; NSFontManager *manager = [NSFontManager sharedFontManager]; NSFontPanel *panel = [manager fontpanel:true]; } 在fontproper

全部,

以下代码:

在fontpropertypage.cpp中:

#import "AppKit/AppKit.h"

CFontPropertyPage::CFontPropertyPage()
{
    m_font = font;
    NSFontManager *manager = [NSFontManager sharedFontManager];
    NSFontPanel *panel = [manager fontpanel:true];
}
在fontpropertypage.mm中

#include "fontpropertypage.cpp"
在尝试获取NSFontPanel指针时,我从Xcode接收到subject中的错误

谁能帮我修理一下吗

这两个文件都存在于Xcode项目中


蒂娅

NSFontManager和NSFontPanel是Cocoa和中的GUI对象

如果直接将此代码放在.mm文件中,那么它肯定会编译,但将其放在包含的.cpp文件中是非常复杂的(我通常只包含头文件,如
.h
.hpp

我建议将该类直接放入.mm文件中

另外,上面的代码通常也有一些错误:

CFontPropertyPage::CFontPropertyPage()
{
    // m_font should be a class member ; what about font? 
    m_font = font;
    NSFontManager *manager = [NSFontManager sharedFontManager];
    // fontPanel needs a capital P
    NSFontPanel *panel = [manager fontPanel:true];
}