delphi 与 C++的基本语法区别
【1】“=”符号
(1)“=”作为比较符。但是,当定义const常量时,“=”又表示赋值符号。而“:=”作为赋值符号。
(2)“=”只表示赋值符号
【2】结构体
(1)record 作为结构体
(2)struct 作为结构体
【3】继承
(1)子类名 = class(父类名)(同时注意这里的“=”也相当于赋值符号)
(2)子类名:public 父类名
【4】class of
(1)A = class of B; 表示A是B的别名。
(2)相当于typedef关键字,定义一个别名。
【5】构造函数
(1)构造函数名为create
(2)构造函数名为类名
【6】析构函数
(1)析构函数名为destroy
(2)析构函数名为类名加~
【7】函数
(1)procedure为过程,function为函数。其区别在于前者没有返回值,后者有返回值。
(2)函数无返回值为void,存在返回值时同function
【8】构造和析构
(1)构造函数必须加constructor,析构函数必须加destructor
(2)不加任何关键字
【9】花括号
(1)begin end代替
(2)花括号{ }作用域
【10】虚函数
(1)virtual写在函数最后面
(2)virtual写在函数最前面
【11】纯虚函数
(1)virtual abstract两个关键字
(2)前面加virtual,后面函数直接“=0”
【12】重载和覆盖
(1)重载overload,override覆盖
(2)参见随笔《重载覆盖重写》
【13】变量声明
(1)变量名在前,类型在后
(2)类型在前,变量名在后
【14】for循环
(1)总是从0到size-1个逐个遍历
(2)for(int i = 0; i < size; ++i){ }
【15】函数返回值
(1)有返回类型的函数,返回变量Result。无返回类型的procedure过程不考虑。
(2)返回值类型与函数的返回类型必须匹配
【16】静态函数
(1)class function 表示静态方法
(2)static关键字
【17】枚举
(1)type 直接枚举名,赋值为枚举成员
(2)enum关键字
【18】不等于
(1)<>表示不等于
(2)!=表示不等于
【19】数组
(1)arrayVar = array[1..24] of Integer;定义一个24个整型大小的数组
(2)int arrayVar[24];注意下标是从0开始。
【20】指针
(1)
type
PointerToInt = ^Integer; //指向整型的指针
var
p: ^Integer; //声明一个指向整型的指针变量
x: Integer; //声明一个整型变量
p:=@x; // 给指针变量赋值为整数的地址
// change the value in two different ways
x:=10;//改变整型变量的值
p^:=20; // 改变指针指向的地址的数据值
(2)
int* p = NULL;
int a = 100;
p = &a;
a= 200;
*p = 300;
【21】引用
(1)
procedure DoubleTheValue(var Value:Integer)
begin
value := Value*2;
end;
引用参数用var关键字标识
(2)
void DoubleTheValue(int & nValue)
{
nValue = nValue*2;
}
备注:每项的(1)为delphi的表示;(2)为C++表示。
Good Good Study, Day Day Up.
顺序 选择 循环 总结
delphi 与 C++的基本语法区别的更多相关文章
- C++与Java的语法区别
C++与Java的语法区别 首先,两个大的不同是主函数和怎样编译的不同,接下来是许多小的区别. main 函数C++//自由浮动的函数int main( int argc, char* argv[]) ...
- Python2和Python3的一些语法区别
Python2和Python3的一些语法区别 python 1.print 在版本2的使用方法是: print 'this is version 2 也可以是 print('this is versi ...
- python2 与 python3 语法区别
python2 与 python3 语法区别 概述# 原稿地址:使用 2to3 将代码移植到 Python 3 几乎所有的Python 2程序都需要一些修改才能正常地运行在Python 3的环境下.为 ...
- MySQL与Oracle的语法区别详细对比
MySQL与Oracle的语法区别详细对比 Oracle和mysql的一些简单命令对比在本文中将会涉及到很多的实例,感兴趣的你不妨学习一下,就当巩固自己的知识了 Oracle和mysql的一些简单 ...
- class helper 可能是从 Delphi 2007 增加的新语法
class helper 可能是从 Delphi 2007 增加的新语法, 因为感觉不太实用, 直到今天才测试了一下. 试过之后才知道: 挺有意思的! 基本功能就是修改已存在的类. Txxx = cl ...
- python语法区别
python语法区别: 大小写敏感 (动态语言:python)变量不用声明 p.s: 静态语言(Java)必须声明变量 语句末尾可以不打分号 可以直接进行数学计算 复制.粘贴功能失效,粘贴到别的地方的 ...
- Delphi与C++的语法区别(六点区别) good
一.Delphi永远没办法在栈上创建一个对象 下面是一段常见的的Delphi代码,在过程的开头声明本过程所需要的全部局部变量: procedure Foo;var obj: TObject; //这句 ...
- Delphi和C++的语法区别 (关于构造和析构)
目录 Delphi永远没办法在栈上创建一个对象 Delphi的构造函数更象是个类方法(静态成员函数) Delphi的析构函数中可以调用纯虚方法 Delphi在构造对象时自动将成员变量清零 Delphi ...
- C、C++、Java、go的语法区别
详细C++.Java比较:http://www.cnblogs.com/stephen-liu74/archive/2011/07/27/2118660.html 一.C.C++的区别 在很大程度上, ...
随机推荐
- Fiddler-007-修改HTTP请求响应数据
前文简述了如何通过 Fiddler 修改 HTTP请求 的请求参数,详情请参阅:Fiddler-006-修改HTTP请求参数. 在进行 App 测试时,经常需要修改请求参数,以获得不同的显示效果,以查 ...
- java web filter 之一 基础实现
本文主要对filter的基本使用进行了讲解,其中涉及到了 filter是什么 一个filter处理一个jsp 多个filter处理一个jsp filter是什么 Filter 是java下的一种过滤器 ...
- Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never diffe
class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; } } public class ...
- .NET基础加强,找工作之前可以看看这些............
.NET基础知识加强: 1 变量命名规则:骆驼命名法:第一个字母小写之后的首字母大写,[对于方法名和类名首字母大写]→培养良好的命名规范. 2 构造函数:没有返回值,方法名和类名相同,每个类中都有 ...
- rem适配
//REM适配new function() { var _self = this; _self.width = 640; // 设置默认最大宽度 _self.fontSize = 100; // 默认 ...
- JavaScript:下拉列表框的事件处理
下拉列表框处理操作主要使用的是一个onchang的事件,此事件描述的是内容改变后行为. 范例:观察下拉列表框的事件处理 代码: <!doctype html> <html lang ...
- apt-get -y install中的-y是什么意思?
是同意的意思.没有 -y的命令也可以执行,系统会提示你是否安装,输入y,回车,就会安装了 apt-get -y install这个指令则是跳过系统提示,直接安装.
- 第三篇 SQL Server安全主体和安全对象
本篇文章是SQL Server安全系列的第三篇,详细内容请参考原文. 一般来说,你通过给主体分配对象的权限来实现SQL Server上的用户与对象的安全.在这一系列,你会学习在SQL Server实例 ...
- git log 常用命令
1.git log 如果不带任何参数,它会列出所有历史记录,最近的排在最上方,显示提交对象的哈希值,作者.提交日期.和提交说明.如果记录过多,则按Page Up.Page Down.↓.↑来控制显示: ...
- ThinkPHP 自动验证与自动填充无效可能的原因(转)
自动验证与自动填充是在使用ThinkPHP时经常用到的功能,但偶尔会遇到自动验证与自动填充无效的情况,本文就ThinkPHP 自动验证与自动填充无效可能的原因做一些分析. create() Think ...