问题标签 [private-constructor]
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.
c# - 如何在 C# 中使用私有构造函数实例化对象?
我绝对记得在某处看到一个使用反射或其他东西的例子。这是与用户无法创建的事情有关SqlParameterCollection
(如果我没记错的话)。可惜再也找不到了。
有人可以在这里分享这个技巧吗?并不是说我认为它是一种有效的开发方法,我只是对这样做的可能性非常感兴趣。
c++ - Impossible to inherit from this object?
Following up on this question, people have suggested I go with "option 3" which might look like this:
But there are two major problems with this:
Body
can never be constructed, even withWorld::CreateBody
(becauseb2Body
is private)- Even if it could, then the
b2Body
part wouldn't be initialized correctly (b2World::CreateBody
needs to be called)
Does this mean I can never inherit from b2Body
/b2World
and follow this same design pattern? (keep in mind that I can't edit the b2* classes)
If so, I suppose you guys would recommend I just keep b2World
and b2Body
as member variables instead?
I think it comes down to these two options now:
c++ - c ++:私有构造函数意味着在标题中没有定义该类对象?
还有一个问题,跟我来!...无论如何,我有 2 个带有私有构造函数和静态函数的类来返回该类的实例。一切都很好,我有一个 main.cpp 文件,通过执行以下操作,我设法获取了我的 gameState 对象指针:
但是现在我好像有问题。为方便起见,我希望 gameState 实例和 actionHandler 实例都保留指向彼此的指针副本。所以我尝试在彼此的头文件中包含:
和
然而,这似乎不起作用......我得到“错误C2143:语法错误:缺少';' 在这两行的'*'”错误之前......如果某个类有一个私有构造函数,你不能在标题中定义某个类的变量吗?或者问题是别的什么?或者可能是因为指向实例的指针存储为静态成员?
编辑:谢谢大家!令人惊讶的是,我在过去几天获得的 C++ 知识量……太棒了!
java - 防止从Java中的类中调用私有构造函数
我们可以通过将构造函数设为私有来限制类对象的创建。但是这个构造函数仍然可以从类中调用。有没有办法在Java中防止这种情况?
谢谢。
c++ - 如何使用复制构造函数和复制赋值为私有的对象?
在阅读TCPL时,我遇到了一个问题,正如标题所指的那样,然后“私人”课程是:
使用代码是:
我想执行这样的操作:
虽然,这些代码来自 TCPL,但我仍然无法得到解决方案......任何人都可以帮助我,不胜感激。
c++ - 如何使用获得私有复制构造函数和赋值构造函数的对象?
可能重复:
如何使用其复制构造函数和复制赋值是私有的对象?
在阅读TCPL时,我遇到了一个问题,正如标题所指的那样,然后“私人”课程是:
使用代码为:
我想做这样的操作
虽然,这些代码来自 TCPL,但我仍然无法得到解决方案......任何人都可以帮助我,不胜感激。
c++ - 在 C++ 中,我可以将类类型表示为变量吗?
我想从我将在运行时确定的类中调用一个静态方法,但我知道它是给定类的子类。所以假设我有这些课程
假设我想在运行时(根据文件中的内容)确定接下来是加载 subA 还是 subB。我可以做到这一点的一种方法是使用一个空对象来调用该方法
但是我已经将 subB 的无参数构造函数设为私有,所以我不能在这里这样做。但我实际上并不需要超级对象,只需要超级子类的类类型。那么有没有办法将其表示为变量?
编辑:我知道在这种情况下,我可以返回一个函数指针,但我正在考虑可能需要调用多个静态函数的更复杂的示例。
c++ - C++ 私有构造函数
如果我不想允许任何人创建我的类的实例,除了我的静态函数(我认为这被称为单例/工厂?),是否足以使默认构造函数私有,或者我还需要显式定义并使私有成为复制构造函数和赋值运算符?
c++ - 私有构造函数
可能重复:
在类中将构造函数设为私有有什么用?
我们在哪里需要私有构造函数?我们如何实例化具有私有构造函数的类?
c++ - 这是对私有构造函数的好用吗?
如果以下是好的或坏的设计,我会每天尝试学习新的东西。
我正在实现一个A
将自身对象缓存在静态私有成员变量中的类std::map<> cache
。的用户A
应该只能访问指向地图中元素的指针,因为完整的副本A
很昂贵且不需要。A
仅当地图中尚不可用时才会创建新的,因为构建A
需要一些繁重的工作。好的,这里有一些代码:
上面的代码有什么问题吗?是否有任何陷阱,我是否错过了内存管理问题或其他任何问题?
感谢您的反馈意见!