templates - 错误 C2143:语法错误:在使用模板类时,在 '<' 之前缺少 ','
问题描述
我为我的 Stack 和 Queue 模板类继承了堆栈和队列。
template<class T>
class Stack : public stack<T> {
// 我的代码在这里 };
template<class T>
class Queue : public queue<T> {
//我的代码在这里
};
但是,当我尝试在 Visual Studio 2014 上编译此代码时,我在使用的两行都收到此错误
:public stack<T>{
:public queue<T>{
如果我删除然后它编译没有任何错误。
我尝试在线搜索解决方案,但没有一个对我有用。
解决方案
所以错误是因为在使用堆栈和队列之前缺少 std:: 。
类堆栈:公共 std::stack{ 类队列:公共 std::queue{
因为我没有写“使用命名空间标准;” 在我的头文件中,所以我必须在内置库中的每个新结构之前提到 std::。
推荐阅读
- android - 恢复后显示主屏幕的 Flutter 应用程序
- java - 无法删除 Spring Kafka 日志记录
- java - 一对多在 JPA CriteriaBuilder 中查找所有不包含特定值的 id
- reactjs - 传递 PatientId 的值时未定义
- java - 如何在 Flutter/Java 中显示 Emojis 和 UTF-8 文本
- javascript - 车身高宽为100vh;并且其中的 div 具有 100vh 或 100% 的宽度,但它没有触及边缘?为什么
- sharepoint-online - SharePoint Online CSOM 自定义应用程序身份验证停止工作
- r - 如何找到 R 数据集中特定列的前 50 行的平均值
- google-apps-script - 如何将多个 Slack Block 合并为一个?
- node.js - Apache/Passenger 无法识别站点位于 https 上