问题标签 [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 回答
69 浏览

.net - .NET ORM 和持久的非属性状态

我刚刚开始使用 .NET ORM,甚至还没有在 Entity Framework 和 NHibernate 之间做出决定。但在这两种情况下,我都遇到了一个问题,他们似乎希望我以各种看起来不自然的方式设计我的课程。这是有关该主题的几个问题之一。


示例类:

在这种情况下,持久性逻辑有点复杂。我们希望保留私有initialAmounthasBeenDoubledYet字段;重新实例化时,我们希望使用 调用构造函数,如果字段为 则initialAmount调用。这显然是我必须编写一些代码的事情。Double()hasBeenDoubledYettrue

另一方面,据我了解,典型的“ORM 友好”版本的代码可能最终看起来更像这样:

我在另一篇文章中谈到了我对默认构造函数和只读字段等的保留意见,但我想这个问题实际上是关于如何让 ORM 处理私有字段而不是私有属性——它可以在 EF 中完成吗?在 NHibernate 中?我们不能virtual为代理目的标记字段……标记使用它们的方法virtual就足够了吗?


这一切都让人觉得很老套:(。我希望这里的人能指出我错在哪里,无论是在我对他们能力的掌握中,还是在我对域建模和 ORM 角色的思考中。

0 投票
2 回答
14021 浏览

javadoc - Java 文档中的私有成员变量

为什么 getter/setter 使用的私有成员变量应该在描述相应 getter 和 setter 的 javadocs 中指定它们的描述。

0 投票
6 回答
5790 浏览

c++ - 源文件中未公开的私有成员变量与全局变量

我正在查看我目前工作的公司中的一些代码,我在*.cpp文件中看到了一些(不是很多)静态全局变量声明(例如,存储侦听器列表),其中.h/.cpp文件属于一个类. 如果仅由类本身使用的变量(静态或其他),我总是将其声明为私有。

这比声明变量私有有优势吗?这是不好的做法吗?或者在声明仅由类使用而没有其他人使用的静态变量时这是否正常?

编辑:在我的问题中,我询问了静态,但是如果它是文件中的非静态全局变量.cpp而不是类的私有成员怎么办?这是不好的做法还是被认为可以?在这种情况下有什么优势吗?

0 投票
5 回答
12462 浏览

c++ - 单例初始化

我在我的代码中实现了单例设计模式。

假设它是:

令我困惑的是这种模式的“初始化”。在 .cpp 我放:

但我不明白如何访问define s,因为它是private。这怎么可能?

蒂亚,吉尔

0 投票
3 回答
6921 浏览

c# - 当 C# 在同一个包含类中时,为什么以及如何允许访问类本身之外的私有变量?

我不知道这个问题是否足够具有描述性,但是为什么以及如何存在这种行为?:

我可以在任何地方访问,这很好,但是由于它是私有layer.Children的,我如何访问?layer.children

仅当代码在Layer类内时才有效。如果访问私有变量是在包含类内部完成的,是否有特殊的代码来区别对待访问私有变量,即使访问是从外部进行的?

我知道使用的原因:

在包含类内部,但创建新实例并从外部修改它们,即使它们仍在包含类中,这似乎不是一个好习惯。

允许这样做的原因是什么?

0 投票
3 回答
3251 浏览

rhino-mocks - Rhino 模拟存根中私人二传手的问题

错误:

您正在尝试对定义为使用 PropertyBehavior 的属性设置期望。而不是编写这样的代码:mockObject.Stub(x => x.SomeProperty).Return(42); 您可以直接使用该属性来达到相同的结果:mockObject.SomeProperty = 42;

我究竟做错了什么?

0 投票
2 回答
1897 浏览

c++ - error: ‘screen’ was not declared in this scope

I'm having troubles with C++. I am making an Engine class for my game that handles graphic using SDL. The Engine class is (hopefully correctly implemented) Singleton.

engine.h:

engine.cpp:

main.cpp: contains the line

Any help would be appreciated

0 投票
3 回答
10555 浏览

javascript - 私有函数和变量 ExtJs4?

在我当前的项目中,我使用的是 ExtJs3.3。
我创建了许多具有私有变量和函数的类。例如:

我知道ExtJs4中新的做事方式是使用Ext.define方法。所以我上面的代码看起来像这样:

所以我想知道的是如何在 ExtJs4 中定义私有变量和函数,就像我在 ExtJs3 中所做的那样?
换句话说,我知道该Ext.define方法将负责定义、扩展和注册我的新类,但是我应该在哪里声明var不是类本身的属性但类需要的 javascript 。

0 投票
1 回答
413 浏览

javascript - 实例共享原型方法以用于私有实例变量

这个问题一直困扰着我。这是一个似乎在 SO 中定期重新出现的问题。

现在我已经设计了一种方法来创建一个构造函数,试图管理私有“属性”只能从构造函数原型 get/set 方法中设置,使用私有存储。它的基本形式如下所示:

基本构造函数:

将 get/set 原型方法添加到Human

我对你的评论很感兴趣。也许我在想一个完全错误的方向,也许你说这是一个不必要的操作,违反了 js 的原型性质,它已经在其他地方完成(并且更好),或者任何事情。请告诉我!

我对此的看法——好吧,我们称之为——模式:你使用它松散的是简单地声明和获取属性(this.some = that等),你赢得的是更好的封装、实例变量的隐私和对属性的一些控制您使用(不确定它是否是正确的术语,但是在 OOP 世界中,有时看起来每个人都对术语赋予了自己的私人含义)。

无论如何,我已经Human这个 jsfiddle中做了一个更完整的工作。

  • [编辑1 ]回应评论:放弃立即调用功能(iif)
  • [ edit2 ] 没有 的较少私有替代方案.caller,但仍然能够使用私有存储:请参阅此 jsfiddle
  • [ edit3 ] 还不如放弃原型
  • [ edit4 ] 完整:这是一个真正的原型 get/set 变体
0 投票
2 回答
2083 浏览

c++ - 访问 cuda 内核中类的私有成员

我创建了一个类并将其对象传递给 cuda 内核。

内核的代码是:

它给出了以下错误:error: ‘int pt::a’ is private

问题是:如何访问类的私有成员?

如果没有私有成员,程序运行正常