language-design

language-design

文章 0 浏览 6

“最少的惊讶”和可变默认参数

任何长期使用 Python 的人都会被以下问题所困扰(或撕成碎片): def foo(a=[]): a.append(5) return a Python 新手会期望这个不带参数调用的函数总是…

挖鼻大婶 2025-01-10 08:22:50 0 0

为什么可变长度数组不是 C++ 的一部分?标准?

过去几年我很少使用C。当我读到这个问题 今天我遇到了一些我不熟悉的C语法。 显然,在 C99 中,以下语法是有效的: void foo(int n) { int values[n];…

丑丑阿 2025-01-09 19:52:04 2 0

为什么 void main() 没有标准化为 main 函数的有效签名?

为什么在 C++ 中将入口点的返回类型设置为 void 总是不被鼓励,并且后来被标准删除并被现代编译器禁止?为什么它被认为是不好的做法? 现在,据我了解…

羞稚 2025-01-08 16:15:09 1 0

以解释性语言存储变量的数据结构

我正在设计自己的实验性脚本语言,以便将其嵌入到我更大的应用程序中。 几乎我想做的所有事情都可以顺利编程,但是将变量存储在内存中的“简单”行为…

昔日梦未散 2025-01-07 10:37:11 0 0

如何使用类型类来实现持久化、内省、身份、打印、

在关于面向对象的神话的讨论中,Tim Sweeney 描述了他认为是我们大家所使用的包罗万象的框架的一个很好的替代方案今天使用。 他似乎对类型类最感兴趣…

大姐,你呐 2025-01-04 05:12:32 1 0

除 JavaScript 之外的任何其他语言在大括号起始位置(同一行和下一行)之间是否有区别?

今天,当我随机阅读 O'Reilly 的 JavaScript 模式一书时,我发现了一件有趣的事情(参考第 27 页)。 在Javascript中,在某些情况下,如果大括号的起…

芸娘子的小脾气 2025-01-03 18:16:20 1 0

为什么隐式复制构造函数调用基类复制构造函数,而定义的复制构造函数则不调用?

考虑一个类层次结构,其中 A 是基类,B 派生自 A。 如果B中没有定义复制构造函数,编译器将合成一个。调用时,此复制构造函数将调用基类复制构造函数…

人事已非 2025-01-03 15:49:43 0 0

是否可以通过编程方式确定类具有哪些属性?

是否可以通过编程方式确定类具有哪些属性?我想查看类(或子类)定义了哪些属性。有人告诉我这与运行时内省有关。我找到了这篇文章,但它似乎只是冰山…

萌无敌 2025-01-02 09:53:44 0 0

语言设计:比较两个值时的隐式转换

我们正在与一位朋友一起开发一种名为 Simp 的新语言。它应该是一种简单但现代的脚本语言,具有良好且直观的语法。这是一个简短的例子: var sum = 0 f…

不乱于心 2025-01-02 05:10:24 0 0

为什么 Python 新式类中的 __new__ 不是类方法?

Python 2.2 的变更日志(引入了新样式类)对 __new__ 函数进行了以下说明: __new__ 是静态方法,而不是类方法。我最初认为它必须是一个类方法,这就…

人生戏 2025-01-01 10:56:25 0 0

参数值(而不是类型)的多态性?

是否有一种编程语言(可能是一个概念或研究论文),它允许 函数/方法参数值的多态性?有点: function factorial(int value > 0){ /* code here */} f…

深爱成瘾 2024-12-29 13:22:34 2 0

基于 C 的语言中从右到左和从左到右关联性的后果是什么?

我正在编写脚本语言,我想复制(相当标准化的)C 操作顺序。 我从未牢牢掌握作为一个正式概念的一件事是关联性。为什么有些运算符组是从左到右,而另…

分開簡單 2024-12-29 10:40:20 2 0

Java 静态导入

通过实验,我发现 Java 非静态方法会覆盖范围内所有相同命名的方法,即使在静态上下文中也是如此。即使不允许参数重载。就像 import java.util.Arrays…

遮了一弯 2024-12-28 14:18:43 0 0

为什么所有基本不可变集合都是最终的或密封在 scala 中?

我在 Scala 中编写了一个用于对可迭代对象进行排序的特征,并且创建一个可以将其混合在一起的类所花费的时间几乎与编写该特征所花费的时间一样长。为…

夜清冷一曲。 2024-12-28 07:01:04 1 0

为什么没有 std::shared_ptr专业化?

该标准提供了 std::unique_ptr 的模板特化,它可以从其析构函数中正确调用 delete[]: void func() { std::unique_ptr arr(new int[10]); ....... } …

蓝海似她心 2024-12-28 01:30:20 1 0
更多

推荐作者

qq_2gSKZM

文章 0 评论 0

∞梦里开花

文章 0 评论 0

qq_IklFPL

文章 0 评论 0

迷途知返

文章 0 评论 0

深海不蓝

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文