目录
also中添加第一个命令,输出hello
1、编写test.hpp文件
2、添加头文件至also.cpp
3、make
4、测试新命令test
调用kitty库添加命令“test1"
1、编写test1.hpp
2、添加头文件至 also.cpp
3、编译
4、测试test1命令是否添加成功:
also中添加第一个命令,输出hello
1、编写test.hpp文件
先进入 src/command目录下,编写test.hpp文件;欲执行的操作放到execute函数下
以后在also中添加命令的.hpp基本框架如下:
#ifndef TEST_HPP
#define TEST_HPP
#include
namespace alice
{
class test_command: public command
{
public:
explicit test_command(const environment::ptr& env)
: command(env,"just for testing for first command")
{
}
protected:
void execute()
{
std::cout<<"hello"<
2、添加头文件至also.cpp
然后进入src目录下打开also.cpp下添加文件;
3、make
进入cd 进入build,执行make命令编译(服务器下) ;(若是在虚拟机上操作,make之前需先执行cmake..预编译);
4、测试新命令test
注意:(简单脚本)
上述由于全局变量设置的原因;只有逐层进入/build/bin下运行also,输入help查看,才能看到新增命令test,而在其它目录下直接运行also输入help查看,不会出现新命令test;此时可以写入下面这个脚本来规避上述问题;
1、编写脚本auto_run_also.sh;
2、chmod a+ 编译脚本;
3、sh运行脚本;并运行also,输入help查看是否有新增命令test
调用kitty库添加命令“test1"
1、编写test1.hpp
进入 src/command目录下,vim 打开编写test.hpp文件;命令欲实现的功能操作放到execute函数下;
#ifndef TEST1_HPP
#define TEST1_HPP
#include
namespace alice
{
class test1_command: public command
{
public:
explicit test1_command( const environment::ptr& env ) :
command( env, "test for add second commands" )
{
}
private:
protected:
void execute()
{
//auto copy = kitty::to_hex( );
auto a = store().size();
auto& opt = store()[a - 1];
auto b = opt.function;
std::cout<<"tt is"<< kitty::to_hex(b)<
2、添加头文件至 also.cpp
进入src文件夹,vim打开also.cpp,添加头文件;
3、编译
进入cd 进入build,执行make命令编译(服务器下) ;(若是在虚拟机上操作,make之前需先执行cmake..预编译);
4、测试test1命令是否添加成功:
查看命令test1:(因为有可能全局变量的设置导致直接also查看不到新命令,可以逐层进入build/bin文件夹下./also打开进行查看);
执行命令test1:
注意:kitty库所在文件目录如下;kitty库可从github搜索找到,有对应的kitty库函数的使用说明;



