找回密码
 骑士注册

QQ登录

微博登录

❏ 站外平台:

Linux 中国◆开源社区 首页 查看评论
[1]
来自江苏无锡的 Firefox 117.0|Ubuntu 用户 发表于 2023-09-27 21:13 的评论:
强数据类型的语言,内存安全性都比较好。例如Pascal/delphi/lazarus。至少不会稀里糊涂的找不到对象。也不会弄不清++++j++++到底是几。
[2]
来自河北承德的 Firefox 117.0|Android 13 用户 发表于 2023-09-28 08:39 的评论:
根本不是一回事。
[3]
来自江苏无锡的 Firefox 117.0|Ubuntu 用户 发表于 2023-09-28 09:41 的评论:
在pascal里:
1. String是包含长度信息的,而不是单纯靠"\0",越界不容易。
2. 数组是包含长度信息的,越界会报错。
3. 数组下标允许从非零开始,for允许降序,能减少大量边界问题。
4. 类型是类型,常量是常量,不允许混用,也没有#define地狱问题。
5. 有Assigned函数。能够判断是否使用了未分配内存。
6. 指针是带数据类型的。
7. 变量统一使用前定义,不会半路冒出来个变量。
8. 没有++ --。
9. 没有宏函数。
10. 编译特别快,耗时C++的十分之一左右,调试很方便。

P.S. 其实如果不玩花活/炫技,即使是C/C++也没那么多问题的。
我比
来自江西上饶的 Chrome 117.0|Mac 10.15 用户 2023-09-28 10:27 5 回复
和强不强类型没关系,核心问题是内存管理方式。
[1]
来自江苏无锡的 Firefox 117.0|Ubuntu 用户 发表于 2023-09-27 21:13 的评论:
强数据类型的语言,内存安全性都比较好。例如Pascal/delphi/lazarus。至少不会稀里糊涂的找不到对象。也不会弄不清++++j++++到底是几。
[2]
来自河北承德的 Firefox 117.0|Android 13 用户 发表于 2023-09-28 08:39 的评论:
根本不是一回事。
来自江苏无锡的 Firefox 117.0|Ubuntu 用户 2023-09-28 09:41 5 回复
在pascal里:
1. String是包含长度信息的,而不是单纯靠"\0",越界不容易。
2. 数组是包含长度信息的,越界会报错。
3. 数组下标允许从非零开始,for允许降序,能减少大量边界问题。
4. 类型是类型,常量是常量,不允许混用,也没有#define地狱问题。
5. 有Assigned函数。能够判断是否使用了未分配内存。
6. 指针是带数据类型的。
7. 变量统一使用前定义,不会半路冒出来个变量。
8. 没有++ --。
9. 没有宏函数。
10. 编译特别快,耗时C++的十分之一左右,调试很方便。

P.S. 其实如果不玩花活/炫技,即使是C/C++也没那么多问题的。
我比
[1]
来自江苏无锡的 Firefox 117.0|Ubuntu 用户 发表于 2023-09-27 21:13 的评论:
强数据类型的语言,内存安全性都比较好。例如Pascal/delphi/lazarus。至少不会稀里糊涂的找不到对象。也不会弄不清++++j++++到底是几。
来自河北承德的 Firefox 117.0|Android 13 用户 2023-09-28 08:39 7 回复
根本不是一回事。
来自广西来宾的 Chrome 117.0|Windows 10 用户 2023-09-28 08:19 6 回复
Github是什么,我根本就不知道啊!
来自江苏无锡的 Firefox 117.0|Ubuntu 用户 2023-09-27 21:13 8 回复
强数据类型的语言,内存安全性都比较好。例如Pascal/delphi/lazarus。至少不会稀里糊涂的找不到对象。也不会弄不清++++j++++到底是几。

返回顶部

分享到微信

打开微信,点击顶部的“╋”,
使用“扫一扫”将网页分享至微信。