# CPP_Logo **Repository Path**: GeekLeague/CPP_Logo ## Basic Information - **Project Name**: CPP_Logo - **Description**: A modified LOGO interpreter based on C++ & GUI with C# - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: https://gitee.com/GeekLeague/CPP_Logo - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2019-11-15 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # CPP_Logo ## 简介 某学校由某超帅的老师开设的 程序设计基础 2019秋 大作业,一个基于C++的魔改版LOGO语言解释器。\ 以及配套的一个简易IDE和其它乱七八糟的东西。\ 可以整个读入LOGO源文件解释执行,也可以进行命令行交互。\ 更多信息见docs目录。 ### 如何编译 事实上我认为不会有人真的去尝试编译运行。而且我们的代码写的很烂。但如果你真的想试试... #### 解释器主程序 ##### Linux 具备基本gcc编译组件即可。项目根目录底下有个垃圾Makefile。跑下make就好了。默认生成的可执行文件名称叫ilogo.exe(别问我为什么后缀是.exe,你可以自己把它的名字改了) ##### Windows 确保安装MinGW即可。剩下的跟在Linux上编译差不多。 #### IDE程序 这个项目使用Visual Studio进行开发,编程语言为C#而且是Win窗体程序,所以只能在Windows上跑。\ 我们没有什么Release,所以就在Edit_Revised文件夹里面扔了个Edit_Revised.bin,它就是编译生成的程序。在Windows上把后缀名改成.exe就可以跑了。如果直接用Visual Studio来打开的话可以编译 ### 如何运行 #### 解释器主程序 解释器主程序是一个命令行程序,它内置了一些说明。\ 常用的模式如下: > **./ilogo.exe h 显示帮助。** > **./ilogo.exe s [source_file] [output_image] 标准模式。** 读入以[source_file]为名的LOGO源文件,输出以[output_image]为名的BMP图像。 > **./ilogo.exe i [output_image] 交互模式。** 从标准输入(键盘)读入源程序,输出以[output_image]为名的BMP图像。 其它的两个模式具有一些奇怪的行为,用于与IDE程序进行交互。 #### IDE程序 这个我就不写了。直接看着用就好。基于.NET Framework 4.7.2开发的,我可以非常确信任何一个.net core是根本完全没有任何一点办法运行的,所以Linux的各位就可以想桃子了。Windows下经过队友的无奈测试向下兼容很老的.NET版本,所以大概是OK的。如果有机会的话可以将来开发一个Python的版本,让跨平台性能更好一点。(by lyh) ### 代码规范 这是一个悲伤的故事,原来还是设定了代码规范,但是到了后面基本就是瞎写,所以我把原来的大部分都删掉了。(by hzx) #### 变量命名 类似python, 类名或结构体名采用PascalCase 例:ExampleClass\ 其他的采用C++中常见的小写名+下划线 例:an_instance ### 作者信息(误) 你在想桃子,没有别人会仔细看我们的辣鸡代码。————hzx 世界上最糟糕最难以维护最慢的LOGO解释器。 —————lyh