问题标签 [private-members]

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 投票
1 回答
1274 浏览

c# - 自定义属性 - 仅为私有成员设置属性用法

我创建了一个自定义属性,我想设置AttributeUsage(或者可能是属性类中的其他属性),这样我的属性只能在私有方法中使用,这可能吗?

提前感谢您的回答!

0 投票
4 回答
25477 浏览

c# - 私有字段的命名约定

首先,我知道这个问题之前已经被问过好几次了,最后,这主要是个人喜好问题,但是阅读有关该主题的所有线程,有些事情我并不清楚。

基本上,大多数人至少同意的一点是公共成员应该是 PascalCased,而私人成员应该是 lowerCamelCased。

通常引起争论的问题是是否在私有成员前面加上下划线或其他任何东西。前缀违反了几个 StyleCop 规则(但显然可以关闭)

不加前缀的理由是你应该使用它。改为前缀。

我的问题是我不明白它是如何产生影响的?我的意思是,这并不是说你不能在课堂内的公共成员上使用它。

让我们想象一个类 Customer,看起来像这样:

(显然,在这种简单的情况下,我可以使用自动属性,但这只是一个示例)。

如果我在这个类中添加了第二个属性,没有什么会阻止我使用 this.Age(公共属性)而不是 this.age(私有字段)来引用它。有时,如果在 getter 级别应用了某些验证或格式化,它甚至可能是可取的。

另外,如果我的类的一些其他属性需要修改客户的年龄,那么直接使用属性而不是支持字段是有意义的,因为 setter 也可以实现一些业务规则验证,对吗?

换句话说,我真的不明白 this 关键字如何避免私有支持成员和公共属性之间的混淆,因为它可以在两者上使用并且 IntelliSense 显示两者?

谢谢。

0 投票
2 回答
974 浏览

objective-c - Objective-C:如何在课堂外隐藏课堂成员?

我正在与某些事情作斗争,但找不到任何令人满意的解决方案。

我有一个带有“myMutableArray”成员的类。

我希望该类自行管理在数组中添加和删除项目,因此我不希望任何其他类能够访问该成员并在其上调用 NSMutableArray 方法。

在理想情况下,我希望有一个私有 getter(能够调用 self.myMutableArray)和这个成员的公共 setter。

你知道我怎么能做到这一点吗?

换句话说 :

我想要其他课程

可以打电话

无法打电话:

我想要我的课

可以打电话

谢谢你。

0 投票
7 回答
155 浏览

c++ - 类和成员变量

假设我有一个名为myList. 这个容器类有一个名为的私有成员变量capacity,它保存实例中值的数量。

capacity例如,在遍历循环中的每个值时知道他们何时到达终点,对于类的用户来说可能是有益的。因此,capacity应该是公开的。

但是,这也将允许该类的用户修改capacity,这显然会搞砸。

拥有一个只返回 的值的公共成员函数会被认为是不好的做法capacity,这将是一个私有变量吗?例如:

capacity每当值capacity更改时更新为值的“克隆”变量怎么样?该类的用户将访问公共“克隆”而不是私有变量本身。

0 投票
11 回答
29450 浏览

oop - CoffeeScript 中的私人成员?

有人知道如何在 CoffeeScript 中创建私有的非静态成员吗​​?目前我正在这样做,它只是使用一个以下划线开头的公共变量来澄清它不应该在类之外使用:

将变量放入类中使其成为静态成员,但如何使其成为非静态成员?甚至有可能没有“花哨”吗?

0 投票
4 回答
1289 浏览

c# - 可以在闭包中使用 Lock() 吗?这在 Lambda 和代码输出中是什么样子的?

我正在阅读这个问题,并阅读了这个回复

这实际上是一个很棒的功能。这让你有一个闭包来访问通常隐藏的东西,比如一个私有类变量,并让它以受控的方式操作它,作为对事件之类的响应。

您可以通过创建变量的本地副本并使用它来轻松模拟您想要的内容。

在这种情况下我们需要实现 Lock() 吗?

那会是什么样子?

根据 Eric Lippert 的说法,编译器使代码看起来像这样

Lambda 会是什么样子,以及长格式代码?

0 投票
10 回答
26870 浏览

c++ - c++中隐藏特定函数的一种方法

我有一个继承struct A : public B,我想对 B 隐藏个别功能,这可能吗?

using BMethod我知道在 A 声明中使用相反的情况是可能的。

干杯

0 投票
2 回答
150 浏览

java - PHP 和 Java:设置属性的可见性是否私有并通过派生类的 getter 访问它是否过大?

所以你怎么看?

我的 Java 讲师说属性应该总是被声明为私有的,没有理由应该以任何其他方式来做。我立即开始思考继承,它会如何影响它。

0 投票
2 回答
59 浏览

visual-c++ - Visual ++ 从 main 打印,并在列表框中的可视表单上继承

我已经创建了一个“主”类,我们将其称为 A(Veichle),并且我有两个从 A 继承的类,我们将它们称为 B(Car) 和 C(MC)。我还有一个处理程序,可以将其称为绑定 A、B 和 C 的“D”。然后我有 Form1 类,可以将其称为 E(Visual)

我想在列表框中的可视表单“E”上打印出来自 A 的私有成员

如果我尝试前)

this->listbox1->items->add(X.veichles[i]->getBrand());

它抱怨 veichles 是 D 中的私人成员。

我怎样才能解决这个问题?

0 投票
3 回答
1274 浏览

c++ - 如何在 C++ 中初始化指向结构的指针数组?

更新:在底部回答。

嗨,大家好,

如何初始化“指向结构的指针数组”?问题是,数组是成员变量,传递给构造函数中数组声明的大小是变量实体。

在这里,我希望表是指向双节点的指针数组,并且我希望将所有指针初始化为 NULL 。这段代码有什么问题吗?还有什么其他更好的方法来执行上述操作?提前致谢。

更新 :

经过讨论,考虑到尺寸很大,我修改了代码。但是如何用一定数量的 NULL 值填充向量表?我尝试了下面的代码,但它不起作用。

答案更新: