gpt4 book ai didi

c++ - 使用 vs typedef 的别名

转载 作者:搜寻专家 更新时间:2023-10-30 23:59:50 26 4
gpt4 key购买 nike

我在学校实验室工作,在说明中说:

Change the typedef that defines Word_List to a alias declaration (using)

根据我用谷歌搜索的内容,执行此操作的方法是更改​​:

typedef vector<Word_Entry> Word_List;

到:

using Word_List = std::vector<Word_Entry>;

但是当我编译时,出现以下错误:

error: expected nested-name-specifier before 'Word_List'

大部分代码:

#include <iostream>
#include <algorithm>
#include <list>
#include <string>
#include <vector>
#include <fstream>
#include <cctype>
#include <iomanip>

using namespace std;

struct Word_Entry
{
string ord;
unsigned cnt;
};

//typedef vector<Word_Entry> Word_List; <-This is what it used to look like
using Word_List = vector<Word_Entry>;


int main()
{
...
}

附加信息:

Yes, I am compiling with c++11 
Word_Entry is a struct that stores 2 variables
I have the line "using namespace std;" in the begining of my code
I'm using mingw compiler

最佳答案

你可以在这里看到解决方案:

#include <string>
#include <vector>

using namespace std;

struct Word_Entry
{
string ord;
unsigned cnt;
};

//typedef vector<Word_Entry> Word_List; <-This is what it used to look like
using Word_List = vector<Word_Entry>;


int main()
{
}

你有一个配置错误,你没有按照 C++11 规范进行编译。

关于c++ - 使用 vs typedef 的别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15005994/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com