调用C 字典的功能图
Calling map of function for c++ dictionary
我正在开发一个C 字典,我制作了一个函数图来搜索单词。
该程序提示用户选择"搜索一个单词"或"添加新单词"。
问题:我制作了一张函数地图,如果用户选择搜索一个单词,则将调用,但该程序似乎并没有调用该函数。
我是map
的新手,并且以前从未使用过,一些帮助很棒。
#include <iostream>
#include <map>
using namespace std;
//map of function to search for word
map <string, int> search_word(map<string, int> &word_bank, int val)
{
string word;
cout<<"Search word: "<<endl;
cin>>word;
if(word_bank.find(word) != word_bank.end())
cout<<word<<endl;
else if (word_bank.find(word) == word_bank.end())
cout<<"word not found";
}
int main()
{
int choice;
map <string, int> word_bank;
word_bank["diingati"] = 0;
word_bank["diperbuat"] = 1;
word_bank["keibuan"] = 2;
word_bank["kepercayaan"] = 3;
word_bank["menggunakan"] = 4;
word_bank["mempergunakan"] = 5;
cout<<"***"<<" Welcome to C++ Malay Dictionary "<<"***"<<endl<<endl;
cout<<"Do you want to search for a word or enter a new word? "<<endl<<endl;
cout<<"Search : 1"<<endl<<"Enter new word: 2"<<endl<<endl;
cin>>choice;
if (choice == 1)
map <string, int> search_word; //calling the function
else
cout<<"Please enter a number: ";
cin>>choice;
}
map <string, int> search_word; //calling the function
评论是错误的。这不调用该功能;它声明一个称为std::map<std::string, int>
类型search_word
的变量。
Aside:
-
将您的警告调整为最大 - 您应该警告
search_word
实际上不会返回任何内容。您还会警告说您声明的变量称为search_word
。 -
考虑一下您希望
search_word
实际返回的内容 - 地图似乎不是很有用。bool
甚至void
都会更好。 -
搜索并阅读,埃里克·利普特(Eric Lippert(的帖子称为"如何调试小程序"。
相关文章:
- 在执行其他功能的同时播放动画(LED矩阵和Arduino/ESP8266)
- 多态性和功能结合
- 带内存和隔离功能的SQLite
- 在CMakeLists.txt的安装功能中使用.cmake文件有什么用
- 类模板的成员功能的定义在单独的TU中完全专业化
- 有没有一种方法可以创建一个带有哈希表的数据库,该哈希表具有恒定时间查找功能
- 如何在C++中获得"静态纯虚拟"功能?
- 两个文件使用彼此的功能-如何解决
- 我应该实现右值推送功能吗?我应该使用std::move吗
- QML按钮点击功能执行顺序
- 无法理解此 return 语句的功能,没有它就会发生运行时错误
- 有没有可能有一个只有ADL才能找到的非好友功能
- 功能样式转换从 'int' 到 'ItemType' 的匹配转换
- 文件系统:复制功能的速度秘诀是什么
- 在用于格式4的arm模拟器中实现功能时的一个问题
- 如何在Directwrite中获得给定字体的可用OpenType功能
- 对可变参数使用声明.如何选择正确的功能
- 询问在设计我的手臂模拟器功能表示格式1
- 调用C 字典的功能图
- 如何在功能中更改Python字典中的类型