jjzjj

SharedPtr

全部标签

c++ - 如何从 C 风格转向 C++ 风格的 flex 解析器

我有典型的可重入C风格解析器,其中解析的数据包含在一个union中,如下所示:%union{intnumber;constchar*string;Item*item_ptr;}我想使用共享指针而不是普通指针。我不能使用std::shared_ptr因为我不能用C++11编译源代码,我也被禁止使用boost::shared_ptr。因此,我有自己的类SharedPtr,实现了所需的行为。不幸的是,我无法将SharedPtr类插入到union中,如下所示:%union{intnumber;constchar*string;SharedPtritem_ptr;}因为我收到以下错误:bison

c++ - 共享内存指针段错误

嘿,我正在尝试在两个进程之间创建一个共享对象。并尝试读取和更改每个进程的值。这是我的简单结构。编辑:我在我的结构中添加了一个构造函数。structshared{shared(){value=10;name="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";}intvalue;stringname;};我尝试在调用fork()之前和之后都调用shmat()但没有任何改变它仍然会出现段错误。编辑:并在shmat()之后添加检查以查看它是否失败。#include#include#include#include#include#includeusingnamespaces