现在位置: 首页 > c++
2012-12-04 23:04 工业·编程 ⁄ 共 3125字 评论 1 条
不管实在C还是C++代码中,typedef这个词都不少见,当然出现频率较高的还是在C代码中。typedef与#define有些相似,但更多的是不同,特别是在一些复杂的用法上,就完全不同了,看了网上一些C/C++的学习者的博客,其中有一篇关于typedef的总结还是很不错,由于总结的很好,我就不加修改的引用过来了,以下是引用的内容(红色部分是我自己写的内容)。 用途一: 定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针型的...
阅读全文
    成员函数的重载、覆盖(override)与隐藏很容易混淆,C++程序员必须要搞清楚概念,否则错误将防不胜防。 8.2.1 重载与覆盖     成员函数被重载的特征: (1)相同的范围(在同一个类中); (2)函数名字相同; (3)参数不同; (4)virtual关键字可有可无。 覆盖是指派生类函数覆盖基类函数,特征是: (1)不同的范围(分别位于派生类与基类); (2)函数名字相同; (3)参数相同; (4...
阅读全文
2012-12-04 22:56 工业·编程 ⁄ 共 469字 暂无评论
一、普通成员变量 普通成员变量,不能在类声明中初始化。 二、静态成员变量 即类成员变量。这种变量也不能在类声明中初始化。 三、静态常量整型数据成员 静态常量整型数据成员可以在类的声明中初始化,而且只有这种变量可以在类的声明中定义。 class Base  {  public:      Base(){};  private:      int a;      int b;   ...
阅读全文
2012-12-04 22:51 工业·编程 ⁄ 共 1175字 暂无评论
在C++中,涉及到作用域的语法很多,经常混淆。所以对作用域与作用域作一个总结,注意这个总结还不完整,当遇到新的语法时再继续补充。 一、全局作用域(global scope) 概念:定义在函数外部的名字具有全局作用域。具有全局作用域的名字可以在整个程序中访问,即使不同文件也可以访问。 二、如何访问全局作用域的变量? 1. 变量在本文件中定义 直接访问。 比如: // file_1.cpp  int counter;   /...
阅读全文
2012-12-04 22:25 工业·编程 ⁄ 共 10636字 暂无评论
一、数组求和     给定一个含有n个元素的整型数组a,求a中所有元素的和。可能您会觉得很简单,是的,的确简单,但是为什么还要说呢,原因是这道题要求用递归法,只用一行代码。 分析: 1. 如果数组元素个数为0,那么和为0。 2. 如果数组元素个数为n,那么先求出前n - 1个元素之和,再加上a[n - 1]即可 [cpp] view plaincopy 1.  // 数组求和  2.  int sum(int*a, int n) ...
阅读全文
2012-12-04 22:22 工业·编程 ⁄ 共 850字 暂无评论
一、C 1.几条规则 (1)char类型一般是8bit,但ANSI C里没有硬性规定其长度,某些嵌入式编译器可能是16bit (2)short和long类型的长度不相同 (3)int类型通常同具体机器的物理字长相同 (4)short通常是16bits, int通常是16bits or 32bits每种编译器可以根据硬件的不同自由确定, 但是short和int必须最少是16bits, 而long类型必须最少是32bits, 并且short必须比int和long类型要短。 2.32位机上类型长度 size of char: 1 size o...
阅读全文
2012-12-04 22:19 工业·编程 ⁄ 共 5526字 暂无评论
1.判断奇偶 只要根据最未位是0还是1来决定,为0就是偶数,为1就是奇数。因此可以用if (a & 1 == 0)代替if (a % 2 == 0)来判断a是不是偶数。 下面程序将输出0到100之间的所有奇数 [cpp] view plaincopy for (i = 0; i < 100; ++i)      if (i & 1)          printf("%d ", i);  putchar('\n');  2.交换两数 [cpp]...
阅读全文
2012-12-04 22:05 工业·编程 ⁄ 共 5911字 暂无评论
    之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下(甚至是100%)的需要。我们可以用 = 进行赋值操作,== 进行比较,+ 做串联(是不是很单?)。我们尽可以把它看成是C++的基本数据类型。     首先,为了在我们的程序中使用string类型,我们必须包含头...
阅读全文
2012-12-04 21:58 工业·编程 ⁄ 共 506字 暂无评论
不同的标识符有着不同的作用域。按作用域的大小可分为如下5种,从大到小依次为: ·程序级 ·文件级 ·类级 ·函数级 ·程序块级 程序级的作用域最大,包括组成该程序的若干个文件。属于程序级作用域的有外部变量或对象和外部函数,在定义它的整个程序中都是可见的。 文件级作用域有内部函数和外部静态变量或对象。这种作用域的范围是在定义它的文件内,并且是从定义时开始到该文件结束。另外,宏名的作用范...
阅读全文
2012-12-02 01:52 工业·编程 ⁄ 共 2760字 暂无评论
在写这篇文章之前,让我们先回顾一下编译器通过匹配过程确定调用哪一个函数的匹配顺序: (1)寻找和使用最符合函数名和参数类型(包括返回值)的函数,若找到则调用; (2)否则,寻找一个函数模板,将其实例化产生一个匹配的重载函数,若找到则调用; (3)否则,寻找可以通过类型转换进行参数匹配的重载函数,若找到则调用它。 如果以上步骤均未找到匹配函数,则这个调用是错误的;如果这个调用有多于一个的匹配选译,则调用...
阅读全文