Class的使用要继承于Interface或者Mixin class.Mixinclass实际上就是类似于抽象类 ,它已经实现的,在子类里面不能实现,类似如下代码:

  

interface AInterface
{
void DoSomething1();
void DoSomething2();
}
//如果不用mixin 那么必须实现该接口的所有函数
mixin class ABase : AInterface
{ void DoSomething1(){ print("DoSomething1 from ABase\r\n");}
int data= 1;
} class AChild : ABase
{
//下面这一行如果实现会覆盖mixin类的函数
//void DoSomething1(){ print("DoSomething1 from AChild\r\n");}
void DoSomething2(){ print("DoSomething2 from AChild\r\n");}
}
class AChildC : AChild
{ //该函数会覆盖父类的DoSomething
void DoSomething2(){
//this.data = 23;
//super::data = 33; //ABase::DoSomething1(); //报错无法访问
AChild::DoSomething2();
super.DoSomething2();
print("DoSomething2 from AChildC\r\n");
}
} void main()
{
print("hello");
AChildC a;
a.DoSomething1();
a.DoSomething2();
}

 对于常用方式以上就够用。

还有几个要说明的:

object@ obj_h;//声明了一个指针为空,  object obj;//这样就可以你直接初始化,类似于c++

调用的时候不支持->而是通过"obj_h."的方式运行

函数对象:

  funcdef bool CALLBACK(int, int);
     A a;

    // Create the delegate for the A::Cmp class method
CALLBACK @func = CALLBACK(a.Cmp);
  func(1,2);//这里直接调用
 字符串处理
void PrintFromCommon()
{
print("Common\r\n");
int b;
b = 2;
int c = 4;
string str = b+c;
string ss;
ss += b;
ss+= c;
print(ss);
}

  如果要引用其他地方的as那么 #include"common.as",即可

反射和序列化,

lambda:

 bool result1 = func(valueA, valueB, function(a,b){ return a == b; });
funcdef void A(int);
funcdef void B(float);
void func(A@) {}
void func(B@) {} void main()
{
// Explicitly specify the type to tell the compiler that A is wanted
func(function(int a) {});
}

  

AngleScript语法的更多相关文章

  1. 我的MYSQL学习心得(一) 简单语法

    我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  2. Swift与C#的基础语法比较

    背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...

  3. 探索C#之6.0语法糖剖析

    阅读目录: 自动属性默认初始化 自动只读属性默认初始化 表达式为主体的函数 表达式为主体的属性(赋值) 静态类导入 Null条件运算符 字符串格式化 索引初始化 异常过滤器when catch和fin ...

  4. [C#] 回眸 C# 的前世今生 - 见证 C# 6.0 的新语法特性

    回眸 C# 的前世今生 - 见证 C# 6.0 的新语法特性 序 目前最新的版本是 C# 7.0,VS 的最新版本为 Visual Studio 2017 RC,两者都尚未进入正式阶段.C# 6.0 ...

  5. Velocity初探小结--velocity使用语法详解

    做java开发的朋友一般对JSP是比较熟悉的,大部分人第一次学习开发View层都是使用JSP来进行页面渲染的,我们都知道JSP是可以嵌入java代码的,在远古时代,java程序员甚至在一个jsp页面上 ...

  6. node.js学习(二)--Node.js控制台(REPL)&&Node.js的基础和语法

    1.1.2 Node.js控制台(REPL) Node.js也有自己的虚拟的运行环境:REPL. 我们可以使用它来执行任何的Node.js或者javascript代码.还可以引入模块和使用文件系统. ...

  7. C#语法糖大汇总

    首先需要声明的是"语法糖"这个词绝非贬义词,它可以给我带来方便,是一种便捷的写法,编译器会帮我们做转换:而且可以提高开发编码的效率,在性能上也不会带来损失.这让java开发人员羡慕 ...

  8. 值得注意的ibatis动态sql语法格式

    一.Ibatis常用动态sql语法,简单粗暴用一例子 <select id="iBatisSelectList" parameterClass="java.util ...

  9. Flex 布局教程:语法篇

    作者: 阮一峰 网页布局(layout)是CSS的一个重点应用. 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性.它对于那些特殊布局非常不方便 ...

  10. postgresql 基本语法

    postgresql数据库创建/修改/删除等写入类代码语法总结: 1,创建库 2,创建/删除表 2.1 创建表 create table myTableName 2.2 如果表不存在则创建表 crea ...

随机推荐

  1. 【知识点】深入浅出STL标准模板库

    前几天谈论了许多关于数论和数据结构的东西,这些内容可能对初学者而言比较晦涩难懂(毕竟是属于初高等算法/数据结构的范畴了).今天打算来讲一些简单的内容 - STL 标准模板库. STL 标准模板库 C+ ...

  2. ChatGPT-4o模型功能介绍

    1.概述 OpenAI 持续突破人工智能的边界,推出了其最新模型 ChatGPT-4o,作为 ChatGPT-4 的继承者,该模型有望带来显著的提升和创新功能.本文将深入解析 ChatGPT-4 与 ...

  3. 如何用 Unity 做出一只赛博宠物

    推荐的一些学习资料 unity 官方文档:Unity 用户手册 (2019.4LTS) - Unity 手册 视频教程:https://www.bilibili.com/video/BV1zB4y1C ...

  4. Newtonsoft.Json 首字母小写

    // 首字母小写 JsonSerializerSettings jsonSerializerSettings = new JsonSerializerSettings(); jsonSerialize ...

  5. 这是一个基于threading可停止线程的有限容量有限并行度的python任务管理器

    这是一个可停止线程的有限容量有限并行度的任务管理器 基于:GitHub - AlitaIcon/StopableThreadJob: 可停止线程任务管理器 Quick Start 基础调用与效果 im ...

  6. Geatpy学习笔记1:官方案例

    一.入门 1.求解器模式入门 案例 1 import geatpy as ea import numpy as np # 构建问题 r = 1 # 目标函数需要用到的额外数据 @ea.Problem. ...

  7. nodejs koa框架下载和导入excel

    ac.js const service = require("../service/model.service"); const urlencode = require(" ...

  8. react的反向代理

    在配置在src文件夹中setupProxy.js文件,并通过npm安装http-proxy-middleware,代理中间件模块 npm i -S http-proxy-middleware 配置反向 ...

  9. 什么是spring框架?

    spring是一个开放源代码的设计层面框架,它解决的是业务逻辑层和其他各层的松耦合问题,是一个分层的javaEE一站式轻量级开源框架

  10. java和javac编译和运行记事本编写的代码

    演示代码如下: package com.springboot.demo; public class Hello { public static void main(String[] args) { S ...