问题标签 [double-underscore]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
4555 浏览

objective-c - Cocoa 中的双下划线是什么

Objective-C 中的单个下划线显然是为 Apple 的“内部”使用而保留的(并且在 Apple 声明之前可用于私有实例变量)。但是他们为什么要在他们的 iPhone 的 SQLiteBooks 示例中使用双下划线呢?请参阅取自 MasterViewController.m 的此片段:

在这个论坛上提到了双下划线的使用,因为它与 C 相关——它是为了“编译器的内部使用”。我想我不明白这在这种情况下如何适用。

我的应用程序中需要一个 ViewController,其行为与 SQLiteBooks 示例项目中的 ViewController 非常相似,但这个双下划线让我感到困惑。

0 投票
4 回答
42382 浏览

c - 双下划线 (__const) 在 C 中是什么意思?

我在 Linux 机器上的 /usr/include/netinet/ether.h 中找到了上述函数定义。

有人能解释一下 const(关键字)、addr(标识符)和最后 __THROW 前面的双下划线是什么意思吗?

0 投票
5 回答
12056 浏览

php - php函数中的下划线

PHP 函数名以下划线开头是什么意思?

例如:__construct()

我知道该构造的含义,但我已经看到函数以下划线或双下划线开头的其他地方,我只是不确定其重要性。

0 投票
4 回答
125404 浏览

python - Python 中的私有变量和方法

可能重复:
Python中对象名称前的单下划线和双下划线的含义

对于 Python 中的私有成员和方法,我应该使用哪个_foo(下划线)或(双下划线)?__bar

0 投票
6 回答
636 浏览

python - 强调方法意味着什么?

我对 Python 语言比较陌生,并且在执行以下操作时遇到了这个问题:

这是我遇到的:

关于这些,下划线是干什么用的?因为当您正常使用方法时(据我所知)它们不会被使用,所以我很难理解为什么他们会花时间在文档中用下划线写出它们。

0 投票
3 回答
21784 浏览

javascript - 为什么 JavaScript 中的某些属性名称以双下划线开头?

我看到 JavaScript 中某些对象的某些属性以双下划线开头。例如,类似__defineGetter__or__defineSetter__或的东西__proto__。它是约定定义的 ECMAScript 规范吗?或者这只是开发者社区的惯例?

0 投票
6 回答
308625 浏览

python - 为什么有些函数的函数名前后都有下划线“__”?

这种“下划线”似乎经常出现,我想知道这是否是 Python 语言的要求,或者仅仅是约定的问题?

另外,有人可以命名并解释哪些函数倾向于带有下划线,以及为什么(__init__例如)?

0 投票
3 回答
654 浏览

performance - 重写 __setattr__ () 的成本太高

我想节省时间并将对象标记为已修改,因此我编写了一个类并覆盖了它的__setattr__功能。

我测量了处理时间,它花了 2 秒。当我注释掉被覆盖的函数时,处理时间是 0.1 秒,我知道被覆盖的函数会更慢,但几乎 20 倍的差距太大了。我想我一定是搞错了。

接受 cfi 的建议

1.消除if条件

运行时间降低到 1.9,略有改进,但如果不更改则标记对象已修改会在其他进程中花费更多,所以不是一个选项。

2.将self.func改为classname.func(self)

运行时间是 2.0 。所以没有什么真正改变

3)提取集修改函数

运行时间降低到 1.2 !太好了,它确实节省了将近 50% 的时间,尽管成本仍然很高。

0 投票
2 回答
4172 浏览

python - Python双下划线修饰

我对这种行为有点困惑(使用 python 3.2):

我已经阅读了一些关于双下划线如何导致属性名称“损坏”的内容,但我希望在上述两种情况下都会出现相同的名称损坏。

对象名称前的单下划线和双下划线是什么意思?

有什么想法吗?

0 投票
1 回答
1442 浏览

python - 导入__module__ python:为什么下划线?

我是 Python 新手,已经开始编写其他人编写的代码。

在从 Pypi 下载的包的源代码中,我注意到使用

src使用包文件夹中定义的函数和类。

这是常见的做法吗?我实际上无法真正理解这种语法,你能给我解释一下或给我一些参考吗?