【零基础 Revit API 教学】 #Day3 - 程式语言基本观念

C Sharp(C#)介绍

在第一天的前言中有提到,许多对 Revit 外挂开发感兴趣的人,经常因为未接触过程式语言、觉得写程式十分困难而却步。因此,在开始使用 Revit API 前,要先介绍一些程式语言的基本观念、语法,以及撰写外挂时,经常会使用到的函式。其实程式语言没有大家想像中的困难,既然他被称为“语言”,那么大家便能够将它作为一门语言来看待。如同各国语言一般,程式语言也有自己的**「语法」**,若了解程式语法,也能够将一段程式由上而下翻译成中文,如同一篇文章。


何谓变数?

程式语言中,最基本的就是**「变数」**,与数学的概念相同,一个 “数值会改变的数” 即为变数,例如 x=1,其中的 x 便是变数。只是在数学中,通常会使用特定的文字来作为变数名称,如 x、y、Ɑ、Ɓ 等。但在程式语言中,可以任意为变数命名,如 name、test123、first_time 等。

除此之外,变数又被区分为不同类型,其中 Revit API 常使用的变数类型有三种,分别是字串(string)、整数(int) 和 浮点数(double、float)。单独一个 “h” 被称为 字元(char),而多个字元组合在一起就是字串,如 “hello”。整数及浮点数的定义与数学相同,例如 1、15、678,这些数字是整数,而 1.234、0.76、3.96,这些则是浮点数,只是程式中浮点数又被区分为 doule 及 float,两者的区别在于,float 是可以储存小数点后较多位数的浮点数。

变数的类型会被加注在变数名称之前,例如 string name、int test123、double first_time,而这个为变数名命,并且指定变数类型的过程称为**「宣告」**。

既然必须为变数指定类型,就代表此变数后只能放置相同类型的值,例如 string name=“hello”、int test123=456、double first_time=3.1415。其中较特别的是,double 和 float 除了可以放置浮点数以外,也能够放置整数,只是变数的类型牵涉到记忆体耗损量,因此通常不会宣告一个浮点数变数来放置整数。而这个在宣告变数的同时,给予变数一个指定值的过程称为**「初始化」**。

http://img2.58codes.com/2024/20163329oFg8f9LnyB.jpg


何谓函式?

在写程式的过程中,可能经常会重複使用某一段程式,为了方便,以及避免程式过于冗长,通常会将这段程式写成一个「函式」,这样便能用短短的一行程式,来呼叫实为一长段的程式内容。

以大家熟悉的事件来做举例,当我们使用 iPhone 呼叫 Siri,让它传送讯息给某人时,iPhone 首先会打开应用程式,选取要传送讯息的联络人,接着输入要传送的讯息内容,最后点击 “传送” 将讯息送出。而 “传送讯息” 这个指令便是一个需要 “有输入值” 的「函式」,如果只告诉 Siri “传送讯息”,Siri 无法执行指令,因为既不知道要发送的 “讯息内容”,也不知道该将 “讯息传送给谁”。而 “讯息内容” 及 “讯息传送给谁”,便是 “传送讯息” 这个函数的输入值。若用程式语言来表示,就会是:

=> 传送讯息( string 讯息内容, string 讯息传送给谁 );

当然,也会有 “没有输入值” 的「函式」,例如呼叫 Siri 打开手电筒,“打开手电筒” 成为一个函式,则不需要任何输入值,Siri 也能清楚知道该执行的动作。若用程式语言表示,就会是:

=> 打开手电筒();

最后,还有一个 “有回传值” 的「函式」,例如呼叫 Siri 计算一加一等于多少,Siri 会回答 “二”。 此时,“加法计算” 为一个函式,此函式同时具有 “输入值” 及 “回传值”,输入值为 “一”、“一”,回传值则为 “二”。若用程式语言表示,就会是:

=> int sum = 加法计算( int first_number, int second_number );

若单纯只呼叫函式 “加法计算(int first_number, int second_number)”,此时虽然函示有回传值,却没有变数能够储存,因此需要在函式前方宣告一个变数,来储存函式执行后所回传的结果。

http://img2.58codes.com/2024/20163329AccAzHAJpA.jpg


(明天会再继续介绍常使用的语法)


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章