查询到最新的12条

【Applied Algebra】有限状态机和模型检测初探

【Applied Algebra】有限状态机和模型检测初探 有限状态机 有限状态机(Finite State Machine,简称FSM)是一种计算模型,可以被用于处理许多具有固定状态和转换规则的场景。FSM在以下场景中很常见: 语法分析器和编译器:解析和处理程序代码,根据预定的语法规则识别语言结构。硬件电子系统:电子产品中的低层控制系统往往依赖有限状态机。游戏开发& 继续阅读

Win10下全能编程开发工程师手册

想成为一名全能编程开发工程师,Win10是个不可或缺的平台,下面将会从多个方面详细阐述Win10下开发所需的知识和技能。 一、Visual Studio Visual Studio是微软推出的一款全面的开发环境,其集成了开发所需的工具、编译器、调试器、设计器等,是Win10下开发的绝佳选择。 1、安装: // 请根据实际情况修改安装路径 choco install visualstudio2019pro -y --params '"/full /Prod 继续阅读

VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,

一、问题描述与分析 编辑c/c++程序,我推荐使用c/c++,vs code相对于别的编译器来说有很多的优势。但是如果第一次使用的话,会觉得其不好用。因为如果不配置好的话,操作会比较麻烦。 注意:我这里是在windows下编写linux程序。 例如在使用vs code编辑c/c++程序在没有配置好的情况下,会出现如下图情况, 出现这种情况的原因是 在vs code没有找到头文件。或者是vs code没有配置好。 为了很好的解 继续阅读

C++——函数重载

目录 1. 函数重载的概念 2. 函数重载注意点 3. C++可以函数重载的原因 4. 总结 1. 函数重载的概念 2. 函数重载注意点 3. C++可以函数重载的原因  Linux环境下演示函数重载:  回顾程序的编译链接: 采用C语言编译器编译后结果:  gcc的函数名修饰规则:  采用C++编译器编译后结果:  C& 继续阅读

java中Path和ClassPath用法比较

java中path是什么? 在计算机上安装java后,需要设置path环境变量以便从任何目录方便地运行可执行文件(javac.exe,java.exe,javadoc.exe等),而无需键入完整路径命令。【视频教程推荐:java教程】 例如: 否则,您需要在每次运行时指定完整路径,例如: java中和classpath是什么? classpath是java编译器和java虚拟机(jvm)使用的系统环境变量。 java编译 继续阅读

=delete 使用

编译器默认会为一个类生成几个默认函数 1.默认构造函数 2.默认析构函数 3.默认拷贝构造函数 4.默认赋值函数 5.移动构造函数 6.移动拷贝函数 class onceToken { public:onceToken ()                  //默认构造函数 default constructor~onceToken ()                 //默认析构函数 destructoronceToken (const onceToken &)         继续阅读

Java内存模型final的内存语义

上篇并发编程之Java内存模型volatile的内存语义介绍了volatile的内存语义,本文讲述的是final的内存语义,相比之下,final域的读和写更像是普通变量的访问。 1、final域的重排序规则final 对于final域编译器和处理器遵循两个重排序规则 在构造函数内对一个final域的写入,与随后把这个对象的引用赋值给另一个引用变量,这两个操作之间不能重排序 初次读一个包含final域的对象的引用,与随后初次读这个fi 继续阅读

Python locals()

函数locals()返回本地符号表的字典。符号表是一种数据结构,保存变量、函数、对象、类出现的细节,由编译器处理。符号表有两种类型:局部符号表和全局符号表。 全局符号表包含程序全局范围的详细信息,它意味着所有函数和类的详细信息。 **locals()** 局部变量()参数: locals()函数没有任何参数。 局部变量()返回值 方法返回当前本地符号表的字典。字典包含本地变量,如文件名、包或来自当前本地符号表的文档字符串。 Python 中局部变量()方法 继续阅读

Python globals()

函数globals()返回全局符号表的字典。符号表是一种数据结构,保存变量、函数、对象、类出现的细节,由编译器处理。符号表有两种类型:局部符号表和全局符号表。 本地符号表包含程序的本地信息,它在函数内、类内等都有意义。全局符号表包含程序全局范围的详细信息,它意味着所有函数和类的详细信息。 **globals()** 全局()参数: globals()方法不接受任何参数。 全局()返回值 globals()方法返回当前全局符号表的字典。字典包含全局变量,如文 继续阅读

Python compile()

使用compile()函数,我们可以将源代码转换为可运行的代码对象。 **compile (source, file_name, mode, flags=0, d optimize=-1)**#where source can be String,a byte string,or abstract syntax tree complile()参数: 编译函数以源代码作为主要输入。其他参数是源代码的文件名、指示源代码类型的模式、标志以及向编译器指示的 dont 继续阅读

C++之 继承 (inheritance)

目录 启示 一、基本语法 二、继承的方式 三种: 公共基础 / 保护继承 / 私有继承 三、继承中的对象模型 ①父类中所有非静态成员属性都会继承给子类 ②而私有成员属性同样继承过去,但是被编译器隐藏,因此无法访问 四、继承中构造和析构顺序 构造的顺序:      父类 > 子类 析构的顺序:        子类 > 父类 五、继承同名成员处理方式 六、继承同名静态成员处理方式 七、多继承 八、菱形继 继续阅读

Lua字节码分析

一、lua语句的执行过程 lua代码首先会被lua编译器(通常所指的luac)编译为二进制文件,编译是以一个lua文件为单位,比如一个lua文件内有语法错误,即使你不执行相关代码,这个文件也是编译不过去的;编译完成后,然后二进制文件被lua虚拟机加载执行。 但实际上我们并不能看到编译器的这个过程,这是因为lua解释器是隐式调用编译器和lvm的,也就是lu 继续阅读