![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++语法基础难点攻破
文章平均质量分 61
KINGLEHUST
这个作者很懒,什么都没留下…
展开
-
C++成员函数的存储方式
思考题: 我们可以说,静态数据成员和静态成员函数时类的一部分,而不是对象的一部分(谭老师说的)。 那么,对于非静态成员函数来说,又是怎样的呢? 回答: 我们先来成员函数的存储方式。 我们都知道,一个类包含数据和函数。当我们实例化一个对象的时候,因为这个对象是用类定义的,那么它理所当然拥有了这个类的数据和函数。但是,一般情况下,不同的对象,他们...2010-07-21 18:38:56 · 182 阅读 · 0 评论 -
C++中内联函数inline是什么样的
内联函数(inline function与一般的函数不同,不是在调用时发生控制转移,而是在编译阶段将函数体嵌入到每一个调用语句中。内联函数(inline function)与编译器的工作息息相关。编译器会将程序中出现内联函数的调用表达式用内联函数的函数体来替换。/***在类里定义的成员函数会被隐含指定为内置函数*/#include "stdafx.h"#in...2010-11-02 09:08:58 · 228 阅读 · 0 评论 -
C++中的类模板Template可以什么时候用
多个类有着共同操作,但是数据类型不同。如下的3个类,getMax的功能是相同的,即求两个数中的最大值,仅仅是数据类型不同。 class Compare_int{ private: int x,y; public: Compare(int a,int b) { x=a; y=b; } int getMax() { ret...2010-11-02 16:10:59 · 565 阅读 · 0 评论 -
C++中引用变量类型可用以扩充函数传递数据的功能
引用的作用是给一个变量起一个别名,例如有一个变量a,想给他起一个别名b,可以写成:int a; int &b=a; 这样声明后,代表a和b就是同一变量单元,而&不是代表取地址符号,而是引用声明符,说明定义了b可并没有为它另开辟内存单元,b和a就是同一变量。 先看一个例子。 #include "stdafx.h"...2010-11-02 20:22:05 · 169 阅读 · 0 评论 -
C++中重载运算符(1)
重载运算符的函数一般格式如下:重载运算符 operator 运算符名称(形参表列)例如,想将“+”用来Complex类(复数类)的加法计算,函数的原型可以:Complex operator+(Complex &c1,Complex &c2); operator是关键字,专门用来定义重载运算符的函数的。我们可以把operator+看作函数名,意思是“对运算符...2010-11-02 23:20:39 · 148 阅读 · 0 评论 -
C语言中的整型常量
常量是在程序运行过程中值不可改变的数据。 C语言中整型常量有3中书写形式:十进制。如0,123,-123八进制。如020,相当于10进制的16。我们在常数的开头加上数字0,表示这是八进制表示的常数十六进制。如0x20,相当于10进制的32(我们总是习惯用10进制的思维)。我们在常熟的开头加上一个数字0和一个英文字母X(或者小写的x)整型常量也可在整数之后加上字母L...2010-11-16 16:47:51 · 2574 阅读 · 0 评论 -
不懂什么是补码——华为面试被毙
听闻某学长被内推到华为面试,结果因为答不上补码是什么而被毙。旷世悲剧啊。让我们来稍微回顾一下下。 在计算机系统中,数值用补码来表示(存储)。这样做的好处有很多。计算机采用补码运算非常方便(计算机中数据受字长的限制,数据的运算属于有模运算,并且对运算结果能方便地按模丢掉),而且可使减法运算由加法运算实现。 我们不管补码的标准化定义(始终觉得那是数学家做的事情)...2010-11-16 23:45:57 · 191 阅读 · 0 评论 -
表达式的逆波兰表示
后缀表达式又叫逆波兰表达式。那么如何讲中缀表达式转化为后缀表达式呢? 比如已知中缀表达式a+b*c+(d*e+f)*g,如何将其转化为后缀表达式abc*+de*f+g*+呢?有4个基本原则。 1. 当读到操作数时,立即输出(由后缀表达式的形式明显可以看出,操作数的输出优先级要比操作符要高);当读到操作符时,并不立即输出,而是将其存于堆栈中。 2. 如果...2010-11-26 10:43:51 · 623 阅读 · 0 评论