博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
利用STL中的map来写一个自己的命令行界面
阅读量:4140 次
发布时间:2019-05-25

本文共 1041 字,大约阅读时间需要 3 分钟。

       居然没有用过命令行?那你怎么会关注这篇文章呢?我晕。

      你看,司机师傅安按个按钮,门就开了,按那个按钮, 就唱歌。 按钮实际对应一个命令,真正解析并执行这个命令的,是里面的函数。在windows的cmd中,输入一个命令,就可以执行对应的功能,那个黑色的界面会把人的想法传给系统,系统来处理。下面,我们利用STL中的map来模拟简单的命令行,主要是了解map的功能和用法。在实战中,map的应用相当广泛。当然,在面试的时候,你也可以吹一下,自己用过map.

#pragma warning(disable : 4786) #include 
#include
#include
using namespace std;typedef void (*cmdFun)();typedef map
strMapFunc;typedef map
:: iterator It;strMapFunc g_map;void dirFunc(){ cout << "List all files and folders." << endl;}void cdFunc(){ cout << "Change to specified directory." << endl;}void mkdirFunc(){ cout << "Make a new directory." << endl;}void initialize(){ g_map.insert(make_pair(string("dir"), &dirFunc)); g_map.insert(make_pair(string("cd"), &cdFunc)); g_map.insert(make_pair(string("mkdir"), &mkdirFunc));}int main(){ initialize(); // 千万别忘记初始化 char cmd[100]; while(1) { gets(cmd); It it = g_map.find(string(cmd)); if(g_map.end() != it) { cmdFun fun = it->second; fun(); } else { cout << "Not support." << endl; } } return 0;}

转载地址:http://cvrvi.baihongyu.com/

你可能感兴趣的文章
私有构造函数
查看>>
组队总结
查看>>
TitledBorder 设置JPanel边框
查看>>
DBCP——开源组件 的使用
查看>>
抓包工具
查看>>
海量数据相似度计算之simhash和海明距离
查看>>
DeepLearning tutorial(5)CNN卷积神经网络应用于人脸识别(详细流程+代码实现)
查看>>
DeepLearning tutorial(6)易用的深度学习框架Keras简介
查看>>
DeepLearning tutorial(7)深度学习框架Keras的使用-进阶
查看>>
流形学习-高维数据的降维与可视化
查看>>
Python-OpenCV人脸检测(代码)
查看>>
python+opencv之视频人脸识别
查看>>
人脸识别(OpenCV+Python)
查看>>
6个强大的AngularJS扩展应用
查看>>
网站用户登录系统设计——jsGen实现版
查看>>
第三方SDK:讯飞语音听写
查看>>
第三方SDK:JPush SDK Eclipse
查看>>
第三方开源库:imageLoader的使用
查看>>
自定义控件:飞入飞出的效果
查看>>
自定义控件:动态获取控件的高
查看>>