支持vc6和vs.net。在2008下产生C2923。
似乎是原有hetero_stack::stack_node::header结构现在不能看作类型了。
将原有code
struct stack_node
{
struct header
{
stack_node * m_back;
stack_node * m_next;
byte_t * m_current; // ptr into m_mem. alloc from here
byte_t * m_end; // ptr to last+1 byte_t in m_mem
};
union
{
header m_head;
byte_t m_align[ aligned_sizeof<header>::no_rtti ];
};
// This is the buffer into which values will be pushed and popped.
// It is guaranteed to meet the AlignmentT requirements because of
// the union above.
byte_t m_mem[1];
size_t size() const // throw()
{
return static_cast<size_t>( m_head.m_end - m_mem );
}
};
改为
struct stack_node_header;
struct stack_node
{
union
{
stack_node_header m_head;
byte_t m_align[ aligned_sizeof<stack_node_header>::no_rtti ];
};
// This is the buffer into which values will be pushed and popped.
// It is guaranteed to meet the AlignmentT requirements because of
// the union above.
byte_t m_mem[1];
size_t size() const // throw()
{
return static_cast<size_t>( m_head.m_end - m_mem );
}
};
struct stack_node_header
{
stack_node * m_back;
stack_node * m_next;
byte_t * m_current; // ptr into m_mem. alloc from here
byte_t * m_end; // ptr to last+1 byte_t in m_mem
};
并将引用:
byte_t m_buf[ aligned_sizeof<stack_node::header>::no_rtti + StaticBlockSizeT ];
改为:
byte_t m_buf[ aligned_sizeof<stack_node_header>::no_rtti + StaticBlockSizeT ];
编译通过。
分享到:
相关推荐
为了在VC环境下使用,确保你的编译器支持C++11或更高版本,或者引入Boost库。 在"VC greta"错误中,"greta"可能是指一个特定的项目名称或者函数,错误可能是由于语法错误、不兼容性或其他编程问题导致的。为了解决...
《greta库在VS2005环境下的应用与实践》 greta库,作为一个专为Visual Studio 2005(VS2005)设计的正则表达式模板库,为开发者提供了强大而高效的正则表达式处理功能。在本文中,我们将深入探讨greta库的核心特性...
从描述来看,已经对源代码进行了适配,确保在VS2008下编译时不会出现错误,这意味着该版本的Greta已经过兼容性优化,可以直接用于VS2008开发项目。 Greta框架的核心设计理念可能是为了提高开发效率和代码的可维护性...
**正则表达式库GRETA在VS2013下的编译与应用** GRETA,全称为Generic Regular Expression Template Toolkit,是由微软研究院的一位前成员开发的C++正则表达式库。它提供了高效的正则匹配功能,并且具有高度的灵活性...
在本文中,我们将深入探讨greta-2.6.4-vc6版本中的正则表达式实现,以及与其相关的源代码文件。 greta-2.6.4-vc6是一个针对Visual C++ 6.0编译环境的正则表达式库,它提供了一种高效且灵活的方式来处理字符串中的...
《GRETA 2.6.4:正则表达式的C++...同时,由于其兼容VC6编译环境,使得即使在较旧的开发工具下,也能享受到现代正则表达式库带来的便利。对于需要处理大量文本数据或进行文本分析的项目来说,GRETA是一个值得考虑的库。
在描述中提到的"vc2008工程,2005的删掉工程配置文件重建",意味着Greta库最初可能是为Visual Studio 2005开发的,但随着项目的更新,已经适应了Visual Studio 2008的环境。这意味着Greta库具有一定的兼容性和升级...
2. **`VC6下正则greta库的测试和使用手记 - Paul@Zhang - 博客园.mht`**:这个文件名暗示了有人(Paul Zhang)在Visual Studio 6(VC6)环境下使用"Greta"库进行正则表达式测试和应用,并记录了他的笔记。...
本工具可以测试正则表达式的正确性,包括单一匹配模式和多匹配模式。使用VC++编译,正则表达式引擎使用Greta
总结来说,Greta正则表达式提供了一种在VC6环境下进行文本匹配和处理的解决方案。它包含了正则表达式的各种功能,如匹配、替换、分割和提取,以及对正则表达式语言的全面支持。结合测试用例,开发者可以有效地利用...
已编译好的微软Greta 2.6.4 正则表达式库。 里面有5个文件(4个h,1个lib) 下载来直接放到要使用正则的项目里就行了。 #include #include "regexpr2.h" using namespace std; using namespace regex; #pragma ...
GRETA的接口简洁,且对C++标准库的依赖较少,因此可以在多种环境中使用。其灵活性使得开发者可以根据需求定制正则表达式的行为,比如实现自定义的匹配算法或错误处理。 3. Boost::regex Boost是一个广泛使用的C++库...
在这个场景下,正则表达式可以设计为匹配`*?">`这样的模式,从而找到所有图片的URL。在VC++中,可以使用标准库中的`std::regex`类进行正则表达式的编译、匹配和查找操作。 获取到图片URL后,程序会发起新的网络请求...
在“greta-2.6.4”压缩包中,我们可以看到以下几个关键文件: 1. `regexpr2.cpp` 和 `regexpr2.h`:这是实现正则表达式引擎的主要源代码和头文件。`.cpp` 文件通常包含实现函数的C++代码,而`.h` 文件则定义了接口...
兼容性强,能在 vc6, vc7, vc8, gcc, Turbo C 等大多数 C 环境编译。 支持命名分组,条件表达式,递归表达式等多种高级特性。(1.2版本新特点) 与 GRETA、boost 相比,DEELX 独到之处: 完全使用模版库...
兼容性强,能在 vc6, vc7, vc8, gcc, Turbo C++ 等大多数 C++ 环境编译。 支持命名分组,条件表达式,递归表达式等多种高级特性。(1.2版本新特点) 与 GRETA、boost 相比,DEELX 独到之处: 完全使用模版库编写,...
兼容性强,能在 vc6, vc7, vc8, gcc, Turbo C++ 等大多数 C++ 环境编译。 支持命名分组,条件表达式,递归表达式等多种高级特性。(1.2版本新特点) 与 GRETA、boost 相比,DEELX 独到之处: 完全使用模版库编写...