草庐IT

local-class

全部标签

c++ - 虚拟功能 : Iterating over a vector<Base Class> that is populated with subclass objects

简短描述:我正在迭代一个vector,在vector中的每个对象上调用一个虚函数,以执行一系列操作。vector和迭代器一样属于基类。所有的对象都是child。当调用虚函数时,它会执行基类的函数。(真的)长描述:我正在尝试为具有一组行为的生物建模。我的基类是抽象的,只有两个函数(虚拟),所有子类都已覆盖:classBehavior{public:Behavior();~Behavior(void){}virtualvoidexecute(){}virtualBEHAVIOR_TYPEgetType(){returnm_Type;}protected:BEHAVIOR_TYPEm_Typ

c++ - 对 `typeinfo for class' 的 undefined reference 和对 `vtable for class' 的 undefined reference

这个问题在这里已经有了答案:Undefinedsymbols"vtablefor..."and"typeinfofor..."?(5个答案)关闭9年前。我正在处理C++中的继承。我想写一个程序来对两个数组进行加法和减法。这是我的代码:#include#include#includeusingnamespacestd;classroot{protected:intsize;double*array;public:virtual~root(){}virtualroot*add(constroot&)=0;virtualroot*sub(constroot&)=0;virtualistrea

c++ - 是否可以为 C++ +'s string class? And to concatenate "文字创建运算符函数?

我可以为C++的string类任意写一个operator+()函数,这样我就不用连接了字符串?例如,而不是做someVariable我可以添加一个operator+()这样我就可以了someVariable="concatenate"+"this";? 最佳答案 std::stringoperator+确实连接两个std::string。但是,您的问题是"concatenate"和"this"不是两个std::string;它们的类型是constchar[]。如果您想连接两个文字"concatenate"和"this"出于任何原因(

c++ - 为什么我们需要 C++ 中的 `class`,而 `struct` 可用于实现相同的目的?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭9年前。Improvethisquestion使用struct我们可以实现class的所有功能:构造函数(可以修改/重载)、析构函数(可以修改/重载)、运算符重载、实例方法、静态方法、public/private/protected字段/方法。那我们为什么需要class呢?注意:我不希望回答说在struct中,字段/方法默认是public。

c++ - 使用 "class "关键字声明一个变量 vs 在函数签名中声明一个没有 "class"关键字的变量

这两种方法有什么区别?有时当我遇到编译时错误提示编译器无法识别一些类类型在函数签名中,那么如果我在各自的变量前面加上关键字“class”,它总是可以解决这种编译时错误。例如,如果编译器无法识别中的Client类型voidrecv(Client*c)如果我把它改成voidrecv(classClient*c)问题解决了。很抱歉,由于我随机想到了这个问题,所以无法想出具体的例子。 最佳答案 在类型参数声明中使用关键字class、struct、enum称为详细类型说明符。它在声明函数的范围内引入新类型。它类似于前向声明。这种声明还有另一种

Kettle Local引擎使用记录(一)(基于Kettle web版数据集成开源工具data-integration源码)

KettleWeb📚第一章前言📚第二章demo源码📗pom.xml引入Kettle引擎核心文件📗java源码📕controller📕service📕其它📕mavensettings.xml📗测试📕测试文件📕测试结果⁉️问题记录❓问题一:jar包冲突-`Anattemptwasmadetocallthemethodjavax.servlet.ServletContext.setInitParameter(Ljava/lang/String;Ljava/lang/String;)Zbutitdoesnotexist.Itsclass,javax.servlet.ServletContext,isa

C++ OOP : Which functions to put into the class?

假设我有一个类a:classa{public:voidload_data();private:voidcheck_data();voidwork_data();voidanalyze_data();}这些函数都对类或其成员做一些事情。但是这个函数:boolvalidate_something(myTypemyData){if(myData.blah>0&&myData.blah与类相关,只会被它调用,所以其他地方都不需要它不对类或其成员做任何事情——只是一个小的“实用”函数在哪里放置validate_something?课内还是课外? 最佳答案

C++ 链接错误 : Undefined symbols using a templated class

我在编写的类中遇到了一些非常奇怪的链接错误。我完全找不到任何可以描述正在发生的事情的东西。VisualStudio(WindowsXP)players.obj:errorLNK2019:unresolvedexternalsymbol"public:__thiscallTreeNode::TreeNode(void)"(??0?$TreeNode@VPlayer@@@@QAE@XZ)referencedinfunction"public:__thiscallPlayerList::PlayerList(void)"(??0PlayerList@@QAE@XZ)Xcode(OSX10.5

C++ 专家 : is the offset of a member variable to its class constant under these conditions?

给定FooClass*类型的变量foo和该类中名为bar的成员变量,是foo之间的距离和&(foo->bar)在有一些约束的任何情况下都是一样的:FooClass是非POD类型。我们知道foo将始终指向FooClass的实例,而不是它的某个子类型。我们只关心单一编译器和单一编译下的行为;也就是说,在gcc下这可能导致的值永远不会在用MSVC编译的代码中使用,并且永远不会保存以在编译之间重新使用。它在二进制中计算并在二进制中使用,仅此而已。我们不使用自定义new,尽管该类的一些实例可能是堆栈分配的,一些是堆分配的。FooClass没有明确的ctor;它依赖于编译器生成的(FooClass

java - 采访 : Is it possible to create a class without name?

面试的时候,面试官问了我我们可以创建没有名字的类吗?因为我不确定是否真的可以创建一个没有名字的类。所以,我说不。后来,我尝试了谷歌搜索,发现其他人也在寻找相同问题的答案,但我没有找到明确的答案。如果有人能清楚地解释这门课,我将不胜感激。我的意思是,该类在技术上称为什么以及我们如何实例化该类? 最佳答案 是的,它叫做匿名类/结构。在C++中:class{}x;x是该类型的一个对象,您不能再创建了,因为,如果类没有名称而且所有....howwouldonecallconstructoranddestructors你不知道。在Java和C