C++类的头文件声明多个public的用意

问题描述

C++类的头文件声明多个public的用意

单文档的ImgPro工程,头文件中出现多个public声明,能不能把它们合并到一起,这样的用意是什么,求指点。
class CImgProView : public CView
{
protected: // create from serialization only
CImgProView();
DECLARE_DYNCREATE(CImgProView)
public:
CImgProDoc* GetDocument();

// Operations
public:

BYTE *image;

// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CImgProView)
public:
virtual void OnDraw(CDC* pDC); // overridden to draw this view
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
protected:
virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);
virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);
virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo);
//}}AFX_VIRTUAL

// Implementation
public:
virtual ~CImgProView();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif

protected:

// Generated message map functions
protected:
//{{AFX_MSG(CImgProView)
afx_msg void OnFileOpen();
afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
afx_msg void OnFileSave();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};

解决方案

可以合到一起,看你的习惯,有人喜欢把一类操作放到一起,也有的人喜欢所有都在这一起

解决方案二:

当然可以合并分开主要是分类把一类的变量放在一起

解决方案三:

C++ 多个头文件的编译

解决方案四:

当然可以合并分开主要是分类把一类的变量放在一起,有人喜欢把一类操作放到一起,也有的人喜欢所有都在这一起

时间: 2025-01-26 13:44:28

C++类的头文件声明多个public的用意的相关文章

第二条、在类的头文件中尽量少引入其他头文件

第二条.在类的头文件中尽量少引入其他头文件 当我们在一个类中去引入另一个类的时候,我们经常会这样使用: #import "xxxx.h" 这是一种常见的方法,但是不够优雅.举个例子.在Driver类中 Driver.h #import <Foundation/Foundation.h> @interface Driver : NSObject @property(nonatomic)NSString *name; @property(nonatomic)NSString *

电子商务网站及类目头文件的定义

现在的公司是从事电子商务网站.年前公司的网站需要重新定义头文件,所以花了两天时间去收集.归类和整理相关title,keywords和description.这里把操作过程中的一些经验写出来和大家分享下. 对头文件内容部分结构的定义 公司网站是主营高端化妆品的电子商务网站,在关键字上竞争是相当激烈.因为目前主要是做百度搜索权重推广,所以选取了主推关键字百度自然排名前几名的网站进行了相关信息的归类和分析   从上面的结构分析后,对自己网站头文件的定义有了较为清晰的定位.当然排名好并不意味着是头文件写

#include类的头文件与直接写class加类名有何区别

在写 头文件的时间 经常会 有一些 class QFile 等这类 看似 是声明的东西..例如下面 #ifndef WINDOW_H#define WINDOW_H QT_BEGIN_NAMESPACEclass QTcpServer;class QTcpSocket;class QProgressBar;class QLabel;class QDialogButtonBox;class QFile;QT_END_NAMESPACE//code endclass QAction;class QC

C++的头文件中类声明后忘记加分号产生不可预期的编译错误

头文件 Test.h 的内容是 class Test { public: virtual void test1(); } 实现文件是 Test.cpp #include "Test.h" #include <iostream> using namespace std; void Test::test1(){ cout<<"Hello"<<endl; } 编译时出现错误 c:\program files\microsoft visu

头文件里定义某个变量或者类

问题描述 头文件里定义某个变量或者类 如果没包含这个头文件而又用的到了这个头文件里定义的东西,可以吗? 解决方案 个人认为,头文件中大多都是声明,很少有定义的.如果在头文件中做了定义,很容易引起重复定义的(模板这里不提). 如果你要使用的一个类或变量在当前文件中没有声明或定义,是需要include其所在的头文件的. 在使用中,有时候你或许会发现,哎,我能使用这个类(这个类是在其他文件中声明定义的),可是我没有include它的头文件啊! 这种情况应该是,你include的另外的头文件中inclu

c++-我在头文件里声明一个变量,然后在Cpp里赋值,怎么不行呢?

问题描述 我在头文件里声明一个变量,然后在Cpp里赋值,怎么不行呢? 我的mfc程序里自定义了一个头文件,里面声明一个变量比如 int a和声明一个函数Init(): 然后自定义一个cpp,里面实现函数Init().在函数体里面给a赋值:a=6: 然后在另一个dialog cpp里TRACE这个值试试,结果说: fatal error LNK1169: 找到一个或多个多重定义的符号,已经在...obj中定义过.反正编辑时不报错,编译链接时报错.怎么回事? 我有很多变量,我希望有一个Init函数,

第一次跟着老师做项目但是看到有些代码里的类不知道什么意思但又不知道在哪个头文件里,该怎么去找

问题描述 第一次跟着老师做项目但是看到有些代码里的类不知道什么意思但又不知道在哪个头文件里,该怎么去找 第一次跟着老师做项目但是看到有些代码里的类不知道什么意思但又不知道在哪个头文件里,该怎么去找这个类的头文件 解决方案 推荐 几个工具 ctags gtags 都可帮助你在一堆源码中找东西 解决方案二: ctrl + 鼠标左键 解决方案三: F12找到定义,或者ctrl+f默认当前文档查询,alt+F12查询范围很大 解决方案四: ctrl + 鼠标左键找到内容 解决方案五: ctrl+r 或者

(一〇九)单独编译(多个源代码文件和头文件)

单独编译的简单原理: C++在内存中储存数据提供了多种选择.   可以选择数据保留在内存中的时间长度(存储持续性)以及程序的哪一部分可以访问数据(作用域和链接)等.可以使用new来动态地分配内存,而定位new运算符提供了这种技术的一种变种.C++名称空间是另一种控制访问权的方式.   通常,大型程序都由多个源代码文件组成,这些文件可能共享一些数据.这样的程序涉及到文件的单独编译.     ----***一〇九谈的是单独编译***一一〇谈的是存储***------   和C语言一样,C++也允许,

VC++开发中完美解决头文件相互包含问题的方法解析_C 语言

所谓超前引用是指一个类型在定义之前就被用来定义变量和声明函数. 一般情况下,C/C++要求所有的类型必须在使用前被定义,但是在一些特殊情况下,这种要求无法满足,例如,在类CMyView中保留了一个非模式对话框对象指针,该对象用于显示/修改一些信息.为了实现对话框"应用"按钮,把对话框做的修改立刻更新到view界面上,为此,需要在对话框类中需要保存view类的指针,这样定义关系就变成如下的代码: 复制代码 代码如下:    #ifndef __MYVIEW_H__   #define _