草庐IT

more-private

全部标签

c# - 来自共享位置的数据的私有(private)副本

我目前正在阅读JoeDuffy的Windows上的并发编程,并遇到以下语句:Multiplethreadsmakeprivatecopiesofdatafromasharedlocation此语句是在一个示例之后给出的,在该示例中,Joe展示了如何从多个线程递增全局变量会导致不可预测的结果,因为它们可能会在时间上重叠。但是我仍然对该声明持怀疑态度,因为没有原子数据类型的私有(private)副本这样的东西-这会使它成为非原子的。所以当他说从共享位置制作数据的私有(private)副本时,他的意思是所有非原子数据类型(用户定义类型等),还是我错过了什么? 最佳

java - 调用抽象类的私有(private)方法

这个问题在这里已经有了答案:HowdoItestaclassthathasprivatemethods,fieldsorinnerclasses?(58个答案)关闭6年前。我有一个要求,我必须调用一个抽象类的私有(private)方法。假设抽象类如下所示:-publicabstractclassBase{protectedabstractStringgetName();privateStringgetHi(Stringv){return"Hi"+v;}}有人可以告诉我有没有一种方法可以调用getHi(可以通过Reflection或其他方式)以便我可以对其进行测试?我正在使用Junit4

java - 私有(private)内部类合成了意外的匿名类

当您编译带有私有(private)​​内部类的Java类时,由于某种原因,匿名类似乎会自动与其一起合成。这个类足以重现它:publicclassSynthesizeAnonymous{publicstaticvoidmethod(){newInnerClass();}privatestaticclassInnerClass{}}编译时,这会生成预期的SynthesizeAnonymous.class和SynthesizeAnonymous$InnerClass.class文件,但它还会生成一个奇怪的SynthesizeAnonymous$1.class文件,该文件对应于合成的java.

c++ - Vim 自动缩进私有(private)关键字

我正在学习Vim(我正在使用gVim)我需要执行以下操作:假设我输入了这个:classMyClass{private}在private之后输入:后,结果应该是:classMyClass{private:}我怎样才能使该行为自动化?我试过:imapprivate:但我觉得这根本不是一个优雅的解决方案。我已经安装了FritzMehner的c.vim。 最佳答案 setcindentsetcinoptions=g-1引用:http://vimdoc.sourceforge.net/htmldoc/indent.html

c++ - 访问私有(private)成员 C++

在这段代码中,为什么我可以在没有编译错误的情况下访问对象的私有(private)成员?classCents{private:intm_nCents;public:Cents(intnCents=0){m_nCents=nCents;}//CopyconstructorCents(constCents&cSource){m_nCents=cSource.m_nCents;}Cents&operator=(constCents&cSource);};Cents&Cents::operator=(constCents&cSource){cSource.m_nCents是私有(private)

c++ - 从 main 访问私有(private)字段和函数

在我的职业生涯中,我只用Java编程,从10天开始就开始使用C++,所以这个问题对你们中的许多人来说可能看起来很奇怪。我在头文件中定义了一个类的结构:#include"ros/ros.h"#include"nav_msgs/Odometry.h"#include"geometry_msgs/Pose.h"#include"geometry_msgs/Point.h"#include"stdio.h"#include"sensor_msgs/LaserScan.h"#include"list"#include"vector"#include"scan_node.h"#include"od

c++ - 为什么我可以使用模板函数中的私有(private)方法

我有模板类MyClasstemplateclassMyClass{public:MyClass(){}private:voidPrivateFunction(){std::cout现在,当我尝试在另一个函数中使用PrivateFunction()时,编译器会报告错误,但是当我在模板函数中尝试相同的内部时,编译器不会显示任何错误。编译器不报错。templatevoidf(){MyClassa;a.PrivateFunction();}编译器报告错误。voidf(){MyClassa;a.PrivateFunction();} 最佳答案

c++ - 私有(private)拷贝构造函数 : disallow

我在一个开源库中编程,该库在代码中几乎没有注释,而且绝对没有与代码相关的文档,或者此类注释完全没有显示任何内容或完全令人困惑。库的示例类有时定义如下(这是一个抽象的简短示例):classA{private://Disallowdefaultbitwisecopyconstruct.A(constA&Acopy){data=Acopy.data;};intdata;public:A(){};A(intarg):data(arg){};A(constA&Acopy){data=Acopy.data;};};private复制构造函数前面的注释“Dissalowdefaultbitwisec

c++ - 为什么私有(private)成员会被继承?

所以基类中的private成员也在继承类中,但在其中不可访问,对吧?它们实际上在分配给继承对象的内存中吗? 最佳答案 Aretheyactuallyinthememoryallocatedtothetheinheritedobject?是的,它们需要存在。私有(private)成员是基类实现细节的一部分。没有它们,一般来说,基类将无法运行(这就是它们首先存在的原因)。将它们设为私有(private)只允许基类创建其选择的实现,而不会将其暴露给任何人,包括子类。 关于c++-为什么私有(p

c++ - 返回私有(private)类成员是否比使用结构并直接访问该变量慢?

假设您有一个包含私有(private)成员的类,这些成员在程序中经常被访问(例如在必须快速的循环中)。想象一下,我定义了这样的东西:classFoo{public:Foo(unsignedset):vari(set){}constunsigned&read_vari()const{returnvari;}private:unsignedvari;};我想这样做的原因是,一旦创建了类,“vari”就不应再更改。因此,为了尽量减少错误的发生,“这在当时看来是个好主意”。但是,如果我现在需要调用此函数数百万次,我想知道是否存在开销和速度减慢而不是简单地使用:structFoo{unsigne