标准::basic_string类型的 stl 容器
Stl container of std::basic_string type
#ifndef UNICODE
#define UNICODE
#endif
#include <iostream>
#include <queue>
#include <stdio.h>
#include <Windows.h>
#include <string>
using namespace std;
int __cdecl main()
{
std::queue<std::basic_string<TCHAR>> results;
results.push(TEXT("Hello world! ♥☻☺"));
wcout<<results.front();
delete [] results.front();
system("pause");
return 0;
}
错误1 错误 C2440:"删除":无法从 "std::basic_string<_Elem,_Traits,_Ax>"改为"void" *' C:\Users\Tomek\Documents\Visual Studio 2010\Solutions\clean_rough_draft\clean_rough_draft\main.cpp 20 1 clean_rough_draft
为什么抛出这样的错误以及如何解决它?
您的第一个问题是您忘记包含<string>
。
您当前的问题是删除没有意义。 你的字符串不是动态分配的,front() 无论如何都会返回对它的引用。因此,您正在尝试对不是数组(字符串是封装数组的对象)并且首先不是动态分配(并且在引用而不是指针上)的东西上调用数组删除。
相关文章:
- 在STL容器中使用模板类
- 检查函数返回类型是否与STL容器类型值相同
- 为什么 STL 容器适配器堆栈中的 top 返回常量引用?
- 如果我真的真的想从 STL 容器继承,并且我继承构造函数并删除新运算符,会发生什么?
- 对象 C++ 向量的 STL 容器
- 如何在不破坏现有应用程序的情况下更改 API 中 stl 容器的数据类型?
- 在 STL 容器的 STL 容器上调用 clear
- "迭代器"和"const_iterator"不是 STL 容器的必需成员?
- 删除包含包含动态对象的 STL 容器的智能指针
- C++:在子类中扩展静态 STL 容器/映射成员?
- ostream 运算符<< 为获取 STL 容器而过载,传递 std::string 会破坏它?
- 没有 STL 容器的迭代器
- 为什么某些 STL 容器(堆栈、队列、优先级队列)不支持迭代器?
- 接受任何 STL 容器的函数
- C++ STL 容器中优先级搜索的优雅方法
- 我们如何打印出C++ STL 容器的value_type?
- 获取嵌套 stl 容器的大小(以字节为单位)
- 如何在C++中重新实现包含指针的 STL 容器的类的迭代器
- 迭代器和 STL 容器的关系
- 如何用索引增量generate_n填充STL容器