- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我被分配将我的链表类转换为模板,但我遇到了一些困惑。我需要将其作为单个 .h
提交文件。
当我尝试构建时,每次提及 LLnode
时都会出现错误, fwdPtr
,和theData
。这是结构的每个元素,所以我在那里做了一些非常错误的事情。另外,struct
定义本身标有 syntax error
template <class V>
class LL
{
private:
LLnode * header;
struct <V> LLnode;
{
LLnode * fwdPtr; // has a pointer member
V theData; // the data within the node
};
public:
LL()
{
header = nullptr;
}
void push_front(string data)
{
LLnode * new_node;
new_node = new LLnode;
new_node -> theData = data;
if (header == nullptr)
{
header = new_node;
new_node -> fwdPtr = nullptr;
}
else
{
LLnode * temp;
temp = header;
header = new_node;
new_node -> fwdPtr = temp;
}
return;
}
.... more functions below ....
在 main()
,将测试该函数,将使用 <string>
实例化一个新的链表。强制转换为类型。这就是为什么我移动了 struct LLnode
里面private
class LL
成员(member)专区。这也是我使用V
的原因整个结构。因为该转换需要深入到结构本身,所以当我为节点动态分配内存时,它会知道接受 string
数据
我知道我需要更改函数定义以包含 V
并使用V
整个过程中都有一些变量。但我不明白在哪里以及为什么。我对模板类如何与指针和程序员定义的结构相关联感到困惑。我理解教科书中模板类/函数的简单示例,但我在这里迷失了。
预先感谢您的帮助!
编辑:这是我收到的错误消息(根据要求)
../LL_template_class.h:23:3: error: unknown type name 'LLnode'
LLnode * header;
^
../LL_template_class.h:24:3: error: declaration of anonymous struct must be a definition
struct <V> LLnode;
^
../LL_template_class.h:24:3: warning: declaration does not declare anything [-Wmissing-declarations]
../LL_template_class.h:25:3: error: expected member name or ';' after declaration specifiers
{
^
../LL_template_class.h:37:4: error: unknown type name 'LLnode'
LLnode * new_node;
^
../LL_template_class.h:38:19: error: unknown type name 'LLnode'
new_node = new LLnode;
^
../LL_template_class.h:48:5: error: unknown type name 'LLnode'
LLnode * temp;
但就像我说的,我得到 can not resolve
所有提及我的 struc LLnode
的错误元素也是如此
最佳答案
两个问题:
<小时/>首先,您将结束 struct LLnode
的声明太早了(你有一个额外的分号)。你有
struct LLnode;
{
...
};
你应该有
struct LLnode
{
...
};
<小时/>
其次,您有声明 struct <V> LLnode
,当你应该有声明 struct LLnode
时。拥有<V>
没有语法意义。
此外,我不确定这是否有必要,但您可能需要移动 header
的声明在您的 LLnode
声明下方,自 header
定义为 LLnode
.
关于c++ - 如何在类中全部内嵌数据结构模板(同一 .h 文件),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58142037/
如果 Rmd 文件中的 R 代码重复使用相同的变量名,则内联 r 表达式似乎返回此变量的最后一个值,而不管内联表达式的位置。除了确保不在文档的不同部分重复使用相同的变量名称之外,是否可以避免这种行为?
我希望多行文本像单个文本 block 一样环绕,例如下面的“Source”和“DEC”字段,而不使用表格。 我想我应该能够使用 inline-block 来让它工作,但我没有成功。 下面是我正在使用的
我不熟悉Inline Anchor styles(link) ,怎样才能让它的作品展现时尚呢? Javascript/JQuery 编码或遗漏了什么? [ http://codepen.io/anon
我正在尝试将嵌入式 ruby 添加到我的 css 样式宽度标签中。 这是目前代码的样子: %"> 不确定我是否只是搞砸了目标变量,或者我的 float 是否已关闭(它正在打印正确的百分比),但
我想制作一个时间轴,但它的结构已损坏。我认为这是因为 display:inline,如果我试图对我的网站这样做,它会破坏它。display: inline-block 也让它变得有趣。 我尝试将 di
这个问题在这里已经有了答案: How to remove the space between inline/inline-block elements? (41 个回答) 关闭 7 年前。 不确定我
我正在尝试使用嵌入式 UIStackViews 来获得如下所示的内容: Label1 ----------------Label2 Label3 -- 所以我在一个水平 UIStackView 中有
是否可以在使用内联 CSS 的同时创建一个盒子模型 hack? 例如: 谢谢! 最佳答案 您也可以在内联样式中使用“前缀”技巧: 只需确保将 IE hack 放在样式属性的末尾即可。然而,我同意尽
有没有人有什么技巧可以在页面上对齐这两个按钮?默认情况下,iframe 版本的 facebook like 按钮显示在 google plus 按钮下方,反之亦然。是否有任何 CSS 技巧可以使它们保
这就是我想要实现的目标。我有一个运行 Suricata 的内联 linux 盒子,能够丢弃数据包。这适用于将所有流量放到 NFQUEUE 0 上然后设置 suricata 监听的标准方法。 我正在编写
我目前正在将元素中的一个页面导出到 Excel,这将不允许链接外部内容,例如外部 CSS。 我想要实现的是一种在我的 View 中包含 CSS 文件但直接从 Visual Studio 自动缩小的 C
在一个两列的框中(column-count: 2),CSS 设置break-inside: avoid 应该避免一些内容从一列中断到其他。这在 Firefox 和 Chrome 中运行良好(使用适当的
几乎完成了我的登录脚本,只需要帮助寻找替代方法: return (mysql_result($query, 0) == 1) ? true : false; 查询: $query = mysqli_q
我正在尝试获取一个具有嵌入式 Tomcat 服务器的 Spring Boot jar,以在运行时加载外部 war 。我正在尝试使用此 post 中显示的技术来执行此操作. Spring Boot应用中
我正在开发 Spring Boot 1.4 应用程序,并且正在为我的 Rest 端点编写集成测试。我正在使用新的测试注释,如下所示: @RunWith(SpringRunner.class) @Spr
我是一名优秀的程序员,十分优秀!