iOS   发布时间:2022-05-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Xcode 4.1自定义DataFormatter包大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我正在尝试制作一个自定义数据格式化程序包,以便我可以更精确地打印STL容器之类的东西等. 我已经在网上按照说明操作,但是我似乎无法运行任何捆绑代码.当我的数据格式化程序被复制到/ Developer / Library / Xcode / CustomDataViews /时,我所能做的就是让Xcode说“SumMary Unavailable” 我使用Xcode“bundle”模板创建了我的包,
我正在尝试制作一个自定义数据格式化程序包,以便我可以更精确地打印STL容器之类的东西等.

我已经在网上按照说明操作,但是我似乎无法运行任何捆绑代码.当我的数据格式化程序被复制到/ Developer / Library / Xcode / CustomDataViews /时,我所能做的就是让Xcode说“SumMary Unavailable”

我使用Xcode“bundle”模板创建了我的包,并将其放入我的C文件中:

#include "/Developer/Library/Xcode/PrivatePlugIns/DebuggerFoundation.ideplugin/Contents/Headers/DataFormatterPlugin.h"
#include "Hi.h"

_pbxgdb_plugin_function_list *_pbxgdb_plugin_functions = NULL;

char * printHi( Hi * obj,int id) {
    char * result = (char*)(_pbxgdb_plugin_functions->allocate(Id,100));
    sprintf( result,"%s",obj->String );
    return result;
}

Hi对象很简单:

#include <stdio.h>
#include <String.h>

class Hi {
public:
    Hi( char * str ) {
        String = new char[strlen(str)+1];
        strcpy( String,str );
    }

    ~Hi() {
        delete( String );
    }

    void print( void ) {
        printf( "%s",String );
    }

    char * String;
};

我知道我的问题不在于我的.plist文件,因为如果我在StringSumMary字段中输入以下内容,它将打印出字符串字段;

%string%:s

但是,如果我把它放入:(是的,我将它链接到Hi *对象,而不是Hi对象.)

{(char *)printHi($VAR,$ID)}:s

我所能得到的就是摘要不可用.我正在调试一个简单的项目:

#include "hi.h"

void foo( Hi * obj ) {
    obj->print();
}

int main( void ) {
    Hi h( "test!" );
    foo( &h );
    return 1;
}

有人有任何调试调试器的技巧吗? :P

解决方法

有产品>调试>共享库 – 您应该检查您的包是否已加载. 此外,您似乎可以使用当前运行目标的任何函数 – 但_pbxgdb_plugin_function_list变量在此时似乎为NULl.

大佬总结

以上是大佬教程为你收集整理的Xcode 4.1自定义DataFormatter包全部内容,希望文章能够帮你解决Xcode 4.1自定义DataFormatter包所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。