`
deepfuture
  • 浏览: 4437703 次
  • 性别: Icon_minigender_1
  • 来自: 湛江
博客专栏
073ec2a9-85b7-3ebf-a3bb-c6361e6c6f64
SQLite源码剖析
浏览量:80447
1591c4b8-62f1-3d3e-9551-25c77465da96
WIN32汇编语言学习应用...
浏览量:71029
F5390db6-59dd-338f-ba18-4e93943ff06a
神奇的perl
浏览量:104315
Dac44363-8a80-3836-99aa-f7b7780fa6e2
lucene等搜索引擎解析...
浏览量:288001
Ec49a563-4109-3c69-9c83-8f6d068ba113
深入lucene3.5源码...
浏览量:15204
9b99bfc2-19c2-3346-9100-7f8879c731ce
VB.NET并行与分布式编...
浏览量:68623
B1db2af3-06b3-35bb-ac08-59ff2d1324b4
silverlight 5...
浏览量:32692
4a56b548-ab3d-35af-a984-e0781d142c23
算法下午茶系列
浏览量:46372
社区版块
存档分类
最新评论

C++类编码注意

阅读更多

类的版式
类可以将数据和函数封装在一起,其中函数表示了类的行为(或称服务)。类提供
关键字public、protected 和private,分别用于声明哪些数据和函数是公有的、受保护
的或者是私有的。这样可以达到信息隐藏的目的,即让类仅仅公开必须要让外界知道的
内容,而隐藏其它一切内容。我们不可以滥用类的封装功能,不要把它当成火锅,什么
东西都往里扔。
类的版式主要有两种方式:
(1)将private 类型的数据写在前面,而将public 类型的函数写在后面,如示例8-3(a)。
采用这种版式的程序员主张类的设计“以数据为中心”,重点关注类的内部结构。
(2)将public 类型的函数写在前面,而将private 类型的数据写在后面,如示例8.3(b)
采用这种版式的程序员主张类的设计“以行为为中心”,重点关注的是类应该提供什么
样的接口(或服务)。
很多 C++教课书受到Biarne Stroustrup 第一本著作的影响,不知不觉地采用了“以
数据为中心”的书写方式,并不见得有多少道理。
我建议读者采用“以行为为中心”的书写方式,即首先考虑类应该提供什么样的函
数。这是很多人的经验——“这样做不仅让自己在设计类时思路清晰,而且方便别人阅
读。因为用户最关心的是接口,谁愿意先看到一堆私有数据成员!”

分享到:
评论

相关推荐

    C++ jpeg图像编码与解码_C++jpeg图像编码与解码_C++JPEG编码_jpeg论文c++_

    本文将深入探讨C++中JPEG图像的编码与解码过程,以及相关的技术要点。 首先,理解JPEG编码的核心是离散余弦变换(Discrete Cosine Transform, DCT)。DCT将图像数据从空间域转换到频率域,使得高频信息更容易被压缩...

    C++语言编码规范

    除了上述提到的目录结构、文件规范和程序格式之外,C++编码规范还涵盖了类、变量、常量、数据类型、宏及预处理、表达式、控制语句、内存管理、调试与维护等方面的内容。例如,对于类的设计,应遵循单一职责原则,...

    C++霍夫曼编码编程

    在VC6环境下编写霍夫曼编码程序时,需要注意C++标准库的兼容性问题,因为VC6支持的是C++98标准,不包含C++11及以上版本的一些特性。例如,可能需要使用std::list代替std::vector来构建优先队列,因为std::priority_...

    C和C++安全编码

    本书《C和C++安全编码》专注于讨论在编程过程中如何安全地编写C和C++代码。C和C++作为强大的编程语言,在软件开发领域中应用广泛,但同时它们也容易出现安全漏洞。因此,安全编码对于C和C++程序员来说至关重要。 C...

    X264编码c++类

    《X264编码C++类详解》 X264是一种高效的H.264视频编码库,常用于视频编码、压缩与传输。在C++编程中,封装X264库为类,可以方便地进行视频处理操作。本文将深入探讨X264编码C++类的设计和实现。 首先,我们来看类...

    VC/C++ 字符编码格式转换

    在VC/C++环境中,常见的编码格式有ANSI、UTF-8和Unicode。这些编码各有其特点,适用于不同的场景。本篇文章将深入探讨如何在VC/C++中利用API函数`WideCharToMultiByte`和`MultiByteToWideChar`进行不同编码格式之间...

    C++编码规范.doc

    C++ 编码规范 C++ 编码规范是指在编写 C++ 代码时所遵守的一系列规则和约定,旨在提高代码的可读性、可维护性和可重用性。本文档将详细介绍 C++ 编码规范的各个方面,包括版面、命名、注释、源代码结构等。 版面 ...

    C++11 Unicode编码转换

    在C++11标准中,Unicode编码转换是一个重要的更新,主要涉及了新的数据类型和字符串定义方式,以解决跨平台的Unicode字符处理问题。这里详细解释一下这些知识点: 1. **char16_t 和 char32_t 类型**: 在C++98之前...

    SEI CERT C++编码标准&规范指南

    SEI CERT C++编码标准&规范指南是一份针对C++语言编写的详细编码规范文档,它为开发者提供了编写安全、可靠、易于维护的C++代码的具体指导原则。该指南在编程社区中具有较高的权威性和实用性,得到了广泛认可和应用...

    C_C++语言编码规范

    ### C/C++语言编码规范详解 #### 目的与目标 C/C++作为一种广泛使用的编程语言,在软件开发过程中,为了确保代码的质量与一致性,制定一套规范化的编码标准至关重要。本篇文档旨在阐述C/C++语言编码规范的重要性和...

    C++编码统一格式

    "C++编码统一格式"是一个关于如何编写清晰、规范的C++代码的指南,旨在帮助开发者遵循一致的编码标准,提高代码质量,减少潜在错误,并增强团队间的沟通效率。 首先,编码风格是编程实践中的一种约定,它包括命名...

    C++ 霍夫曼编码算法的实现

    在实现过程中,注意要遵循C++的良好编程习惯,比如使用智能指针管理内存,避免内存泄漏,以及使用异常处理来增加程序的健壮性。 总之,C++实现霍夫曼编码算法需要对数据结构和算法有深入的理解,包括二叉树的构建、...

    香农编码之C++实现

    香农编码是一种在数据压缩领域广泛应用的熵...在C++实现时,需要注意字符频率统计、编码分配、二进制处理等多个环节,确保程序的正确性和高效性。对于描述中提到的问题,需要仔细检查代码,找出并修复这些“小瑕疵”。

    游程编码C++实现

    ### 游程编码C++实现 #### 核心概念 在上述代码中,游程编码的核心思想得到了体现。首先,程序接收一个由0和1组成的序列作为输入,然后通过遍历这个序列,计算出每个数字连续出现的次数,最后将这些次数作为游程...

    C++写的Base64编码类

    在提供的资源中,`Base64.cpp`和`Base64.h`文件是C++实现Base64编码类的源代码,它们可能包含了以下关键功能: 1. **编码函数**:此功能将输入的字节数组转换为Base64字符串。首先,根据输入数据的长度进行取模运算...

    C++编码规范.docx

    以下是从提供的文件中提取的C++编码规范的主要知识点: 1. **命名规则**: - **类名**:类名应清晰地反映出类的用途,通常是名词,并且遵循驼峰命名法,即每个单词的首字母大写,如`ClassName`。 - **方法和函数...

    c++哈弗曼编码

    3. **C++编程注意事项**: - 使用`#include<iostream.h>`是旧式的C++头文件引用方式,现代C++代码推荐使用`#include<iostream>`。 - 在定义结构体时,可以考虑使用`struct`关键字而不是`typedef`,如`struct ...

    C++编码规范.pdf

    由于提供的文件内容不完整且包含大量OCR扫描错误,这里我将基于可识别的清晰部分和常见的C++编码规范主题,尽力构建一个详细的知识点说明。 首先,文件标题为"C++编码规范.pdf",表明文档主要关注C++编程语言的编码...

    C++实现哈夫曼编码

    在C++中实现哈夫曼编码涉及到几个关键步骤和概念,以下将详细介绍这些知识点。 首先,我们需要理解哈夫曼树(Huffman Tree)的基本原理。哈夫曼树是一种特殊的二叉树,也称为最优二叉树或最小带权路径长度树。它的...

    c/c++采用编码转换表实现gbk与unicode互转

    总的来说,使用编码转换表在C/C++中进行GBK和Unicode的转换是一种有效的方法,特别是当处理的文本数据量不大时。然而,对于大规模的文本处理,更推荐使用现成的库,如iconv,它们提供了更高效和全面的编码转换支持。

Global site tag (gtag.js) - Google Analytics