草庐IT

publications

全部标签

c++ - 如何使用公共(public)函数访问私有(private)变量?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求提供代码的问题必须表现出对所解决问题的最低限度理解。包括尝试过的解决方案、为什么它们不起作用,以及预期结果。另请参阅:StackOverflowquestionchecklist关闭9年前。Improvethisquestion所以我不知道你们中的任何人是否去过/去过NewBoston.Com(顺便说一下,这是很棒的资源),但我正在看这个视频,老师说你如何使用公共(public)访问私有(private)信息函数...这是视频:http://www.youtube.com/watch?v=jTS7

通过具有指向函数的公共(public)成员指针的对象调用 C++ 函数,而不使用取消引用运算符

好吧,我认为这个标题已经足够描述了(但令人困惑,抱歉)。我正在阅读这个图书馆:Timer1。在头文件中有一个指向函数的公共(public)成员指针如下:classTimerOne{public:void(*isrCallback)();//C-styleptrto`void(void)`function};存在一个TimerOne类的实例化对象,称为“Timer1”。Timer1调用函数如下:Timer1.isrCallback();这怎么正确?我熟悉使用取消引用运算符通过函数指针调用函数。例如:(*myFunc)();所以我希望通过对象进行的上述调用更像是:(*Timer1.isrC

C++默认构造函数无法初始化公共(public)变量?

我有一个简单的例子:#includeclassparent{public:inti;};classchild:publicparent{public:intd;};intmain(){childc;std::coutIfyoudonotexplicitlyinitializeabaseclassormemberthathasconstructorsbycallingaconstructor,thecompilerautomaticallyinitializesthebaseclassormemberwithadefaultconstructor.但c中的所有整数(intd;和inti;

c++ - 公共(public)变量访问的线程安全

我的类中有一些私有(private)变量(比如inta、intb、intc)。由于一些内部操作,我需要以线程安全的方式设置/获取此类变量,因此我使用了一些包装getter/setter并使用了作用域互斥体。voidsetA(inta){unique_locklock(opMutex);this->a=a;}voidgetA(inta){unique_locklock(opMutex);returna;}voidsetB(intb){unique_locklock(opMutex);this->b=b;}voidsetC(intc){unique_locklock(opMutex);th

c++ - 在 C++ 中创建只读(公共(public))类成员

我有Actionscript3等语言的背景,我们有一种特殊的方式将成员变量定义为实例和设置/获取protected或私有(private)成员值的方法。让我举个例子:在一个类中,我们可以这样说:privatevar_myString:String;publicgetmyString():String{return_myString;}publicsetmyString(newValue:String):void{//Dosomesupersecretmemberprotectionn'stuff_myString=newValue;}然后在该对象之外我可以执行以下操作:trace(my

c++ - 类中的公共(public)结构

我是C++新手,假设我有两个类:Creature和Human:/*creature.h*/classCreature{private:public:structemotion{/*Allemotionsarepercentages*/charjoy;chartrust;charfear;charsurprise;charsadness;chardisgust;charanger;charanticipation;charlove;};};/*human.h*/classHuman:Creature{};我在main.cpp的主要函数中有这个:Humanfoo;我的问题是:如何设置foo

c++ - 是否可以为const操作指定一个private成员变量public?

我有一个成员变量enabled_m,它的值取决于许多变量。由于这些不变量应该由类维护,我希望它是private:classfoo_t{public:voidset_this(...);//mayaffectenabled_mvoidset_that(...);//mayaffectenabled_mvoidset_the_other_thing(...);//mayaffectenabled_mboolis_enabled()const{returnenabled_m;}private:boolenabled_m;};这行得通,但实际上我的意图是要求foo_t的用户通过该类来修改ena

c++ - 错误 LNK2001 : unresolved external symbol "__declspec(dllimport) public: class QString & __thiscall QString::operator=(class QString &&)"

我非常想找到关于上述错误的任何信息。我正在使用visualstudio2010。当我在调试或发布中编译我的项目(32位)时,我收到以下消息:1>heterogeneous.obj:errorLNK2001:unresolvedexternalsymbol"__declspec(dllimport)public:classQString&_thiscallQString::operator=(classQString&&)"(_imp_??4QString@@QAEAAV0@$$QAV0@@Z)1>debug\nori.exe:fatalerrorLNK1120:1unresolvede

c++ - 根据公共(public)元素组合成对的整数

假设我有一对整数,例如(1,3)、(5,6)、(7,8)、(3,9),然后我想根据它们之间的共同元素将这些对组合成独特的集合即我可以组合(1,3)和(3,9)因为3在它们之间是通用的,所以上面输入的最终输出应该是这样的(1,3,9),(5,6),(7,8)一种方法可能是遍历此数组并基于公共(public)元素将其组合并从数组中删除第二对,我认为这很耗时。在C/C++中执行此操作的有效方法是什么? 最佳答案 执行此操作的一种有效方法是将其视为图形连接问题。创建一个图,其中节点是整数对,如果它们对应的对具有公共(public)元素,则在

c++ - 一起处理异常的公共(public)部分

我目前有一些代码正在尝试重构。大量的异常有一些针对所有异常的通用代码以及一些需要针对每个特定异常类型单独处理的特定代码。我试图弄清楚如何摆脱每个catchblock中的公共(public)部分。一个想法是这样做:try{/*Stuffthatmayfail*/}catch(conststd::exception&){/*docommonparthere*/try{throw;}catch(constexception1&){/*dostuffforexception1here*/}catch(constexception2&){/*dostuffforexception2here*/}