天下

记录修行的印记

autoexp.dat Writing custom visualizers for Visual Studio

//libWL.h
#pragma once
#ifdef LIBWL_EXPORTS
    #define LIBWL_API __declspec(dllexport)
#else
    #define LIBWL_API __declspec(dllimport)
#endif

namespace Text {
class LIBWL_API StringA
{
    struct StringAImpl;
public:
    StringA();
    virtual ~StringA();
public:
    void Format();
private:
    char* data;
    size_t size;
private:
    StringAImpl* impl;
};
}

//libWL.cpp
#include "stdafx.h"
#include "libWL.h"

using Text::StringA;
struct StringA::StringAImpl{
    string data;
};
StringA::StringA():impl(new StringAImpl()),data(NULL),size(0)
{
}
StringA::~StringA()
{
    delete impl;
}
void StringA::Format()
{
    char buf[] = "abc1234";
    impl->data.resize(23);
    this->data = &impl->data[0];
    strcpy(data,buf);
    this->size = impl->data.size();
}

;autoexp.dat
[Visualizer]
Text::StringA{
    preview         ([$e.data,s])
    stringview      ([$e.data,sb])
    children
    (
        #(
         [data]:$e.data,
        [size]:$e.size,
    #array( 
         expr: $e.data[$i]
         size: $e.size
        )
        )
    )
}


参见:
http://blog.csdn.net/pizi0475/article/details/5833102

posted on 2015-12-09 16:45 天下 阅读(140) 评论(0)  编辑 收藏 引用 所属分类: C/C++


只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


<2012年9月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

导航

统计

常用链接

留言簿(4)

随笔分类(377)

随笔档案(327)

链接

最新随笔

搜索

最新评论