class相关内容

为什么枚举类比纯枚举优先?

我听说有少数人因为类型安全而建议在C ++中使用枚举类。 但这是什么意思? 解决方案 类型: 枚举类 es 平常枚举 s 这里是一些例子如何声明他们: 枚举类Color {red,green,blue} ; //枚举类 枚举动物{dog,cat,bird,human}; // plain enum 两者之间有什么区别? ..
发布时间:2016-10-11 22:24:55 C/C++开发

一个“空”构造函数或析构函数是否与生成的函数做同样的事情?

假设我们有一个(玩具)C ++类,例如: class Foo { public: Foo(); private: int t; }; 由于没有定义析构函数,C ++编译器应该为类Foo自动创建一个。如果析构函数不需要清除任何动态分配的内存(也就是说,我们可以合理地依赖于编译器给出的析构函数),将定义一个空析构函数,即 Foo ::〜Foo(){} ..
发布时间:2016-10-11 22:23:43 C/C++开发

你如何使用CreateThread作为类成员的函数?

如何使用 CreateThread()创建类成员的函数线程? 解决方案 您需要创建一个静态方法作为实际的线程启动函数,并传递一个指向实例的 lpParameter code> CreateThread 。这将被传递给静态方法,可以将它转换为一个对象指针并调用成员函数。 MyClass { static DWORD WINAPI StaticThreadStart(void * ..
发布时间:2016-10-11 22:16:08 C/C++开发

从名称实例化类?

想象我有一堆C ++相关的类(所有扩展相同的基类和提供相同的构造函数),我在一个公共头文件(我包括)中声明,并在一些其他文件(我编译并静态链接为我的程序的构建的一部分)。 我想能够实例化其中一个传递的名称,这是一个参数,必须传递给我的程序(作为命令行或作为编译宏)。 我看到的唯一可能的解决方案是使用一个宏: code> #ifndef CLASS_NAME #define C ..
发布时间:2016-10-11 22:11:01 C/C++开发

将类代码分成头和cpp文件

我很困惑如何将一个简单类的实现和声明代码分成一个新的头和cpp文件。例如,如何分隔下面类的代码? class A2DD { private : int gx; int gy; public: A2DD(int x,int y) { gx = x; gy = y; } int getSum() { return gx + gy; } }; ..
发布时间:2016-10-11 21:57:05 C/C++开发

“this”指针的类型

如标题中所述,我想知道'this'指针的类型。 我正在处理一个项目,我观察到'this'指针的类型是“ClassName * const this”在Windows上使用VC ++ 2008。我想知道什么是需要/要求使这个指针成为一个常量指针。感谢。 解决方案 此指针的类型是 ClassName * const ClassName * ,这取决于是否在类 ClassName 的非co ..
发布时间:2016-10-11 21:50:59 C/C++开发

C ++静态常量字符串(类成员)

我想有一个类的私有静态常量(在这种情况下是一个形状工厂)。 我想有类似的东西。 class A { private: static const string RECTANGLE =“rectangle”;不幸的是,我从C ++(g ++)编译器得到了各种错误,例如: } $ b as: ISO C ++禁止初始化 成员'RECTANGLE' ..
发布时间:2016-10-11 21:19:59 C/C++开发

带有const参数和重载的函数

尝试了 stackeroverflow qn 所以它让我想为什么不重载的函数,我想出了一个稍微不同的代码,但它说,该函数不能重载。我的问题是为什么?或者有另一种方式? #include using std :: cout; class Test { public: Test(){} int foo(const int)const; int fo ..
发布时间:2016-10-11 21:19:03 C/C++开发

私人和受保护的成员:C ++

有人能告诉我在课堂上私人和受保护的成员之间的区别吗?我理解从最佳实践约定,变量和函数不在类外调用应该被私有 - 但看着我的MFC项目,MFC似乎喜欢受保护。 解决方案 私有成员只能在定义它们的类中访问。 受保护的成员可以在定义它们的类中和从该类继承的类中访问。 编辑: 编辑2:使用在您的问题的上下文中有意义的任何东西。你应该尽量使成员私有,只要你可以减少耦合和保护基类的实 ..
发布时间:2016-10-11 20:31:39 C/C++开发

你如何传递一个成员函数指针?

我试图传递一个类中的成员函数到一个接受成员函数类指针的函数。我所遇到的问题是,我不知道如何正确地做这个在类中使用this指针。有没有人有建议? 以下是传递成员函数的类的副本: class testMenu:public MenuScreen { public: bool draw; MenuButton X; testMenu():Men ..
发布时间:2016-10-11 20:25:59 C/C++开发

C / C ++ Struct与类

在完成我的C ++类后,结构/类几乎完全相同,除了一些细微的差别。 我从来没有在C中编程;但我知道它有结构。在C中是否可以继承其他结构并设置一个公共/私有的修饰符? 如果你能在常规C中这样做,为什么我们需要C ++?在C ++中,结构和类是什么使得类与结构不同? 解决方案 相同;唯一的区别是,在类中的访问修饰符(对于基类的成员变量,方法,和),默认为private,struct ..
发布时间:2016-10-11 20:23:37 C/C++开发

静态类成员上未解析的外部符号

非常简单的: 我有一个类主要由静态公共成员组成,所以我可以将类似的函数组合在一起,仍然必须从其他类/函数。 无论如何,我已经定义了两个静态unsigned字符在我的类的公共范围,当我试图修改这些值在同一个类的构造函数,我在编译时出现“未解析的外部符号”错误。 class test { public: static unsigned char X; stati ..
发布时间:2016-10-11 20:15:32 C/C++开发

什么是访问限定符?我应该继承私人,保护还是公共?

我对于访问修饰符相对于继承的含义感到困惑。涉及 private , protected 和 public 关键字? 解决方案 什么是访问规范? 是C ++中的类/ struct / Union的3 访问说明符。这些访问说明符定义如何访问类的成员。当然,类中的任何成员都可以在该类中访问(在同一类的任何成员函数内部)。继续前往访问类型说明符,它们是: 公开 - 声明为Public的 ..
发布时间:2016-10-11 19:58:49 C/C++开发