在 WSI 中使用 C++ 开发 iOS 应用

来源:互联网 发布:网络编程怎么学 编辑:程序博客网 时间:2024/05/16 01:50

在 WSI 中使用 C++ 开发 iOS 应用

使用C++不但能有效提高程序运行速度,而且可以减少BUG的发生,加强应用的软件工程质量,缩短应用开发周期。

WSI 封装了大多数常用的iOS NextStep 以及 UI(NS) 界面类,采用 Signals/Slots 模式转换了原始的消息回调,使用 virtual 实现 Objective-C 的 delegate 模式,达到使用 C++ 对象完成整个 iOS 应用的开发的目的。

UIView 例子:

class MainView
: public ::wsi::ns::View


public:
MainView()
{
// 设置按钮
button.set_text(tr(@”BUTTON”));

    // 添加按钮到View    add_sub(button);    view().button.connect(kSignalButtonClicked, _action(MainView:: act_button_clicked), this);    // 绑定按钮的点击信号
   }void layout_subviews(){    //排版    ::wsi::CGRectLayoutHBox lyt(bounds());    ::wsi::CGRectLayoutLinear lnr(lyt);    lnr << (::wsi::flex)1 << (::wsi::flex)1 << (::wsi::flex)1;    lyt << lnr;    button.set_frame(lyt << lnr);    // 居中放置这个按钮
    }::wsi::ui::Button button;

protected:

{    // process.}

};

UIViewController 例子:
class MainController
: public ::wsi::ui::Controller
{
public:

void view_loaded(){    view().button.connect(kSignalButtonClicked, _action(MainController::act_button_clicked), this);    // 绑定按钮的点击信号}

protected:

{    // process...}

};