c
daydayup_666
这个作者很懒,什么都没留下…
展开
-
c++中点操作符(.)和箭头操作符(->)的区别
这二个的区别其实很简单,首先,这二个操作符都是为了获取类类型对象的成员,但是,有区别,点操作符的左操作数是对象,而箭头操作符是指针。 看下面的一个例子: Sales_item是一个类名,same_isbn()是这个类的成员函数; Sales_item item(); Sales_item *sp=&item;(*sp).same_isbn();如果你在写的时候漏掉了这个指针原创 2017-09-17 11:59:02 · 1406 阅读 · 0 评论 -
C语言可变参数函数取参方法
熟悉C的人都知道,C语言支持可变参数函数(Variable Argument Functions),即参数的个数可以是不定个,在函数定义的时候用(...)表示,比如我们常用的printf()\execl函数等;printf函数的原型如下:int printf(const char *format, ...);注意,采用这种形式定义的可变参数函数,至少需要一个普通的形参,比如上面代码中的*...转载 2018-08-19 18:04:17 · 1172 阅读 · 0 评论 -
C++ 内联函数,宏定义函数和普通函数的区别:
这个问题是面试中经常遇到的,再一次华为的面试中面试官就问道我这个问题,当时,答的不是很好,甚至有些错误,特此根据自己的理解,总结一下。本人水平不高,有什么错误,欢迎提出! 首先,我们都知道C++从源代码到执行经过3个大体的步骤: 1.预处理,这个阶段主要是将宏定义的符号在源程序中进行替换,比图#define pi 3.1415,这个时期就是将源程序中的所有的pi这样的符号替换为3.1415...原创 2018-04-13 12:09:11 · 903 阅读 · 0 评论 -
c++之STL之pair,map
pair类型:下面是这个类型的一些操作:pair p1;创建一个空的pair类型,它的二个元素分别是T1和T2类型,采用的是值初始化。pair p1(v1,v2);创建一个pair类型,它的二个元素分别是T1,T2类型,其中first成员初始化为v1,seconde初始化为v2;make_pair(v1,v2) 以p1和p2创建一个新的pair类型,元素类型分别是v1和v2类型p1原创 2017-10-05 11:37:14 · 754 阅读 · 0 评论 -
八皇后问题
八皇后问题是一个经典的问题。问题的描述就是:在国际象棋棋盘上(8*8)放置八个皇后,使得任意两个皇后之间不能在同一行,同一列,也不能位于同于对角线上。问共有多少种不同的方法,并且指出各种不同的放法。这个题的思路,可能,首先让人想到的就是穷举法,这样就需要8重循环,这个能做,但是,有点慢,如果,我们改为n皇后问题呐,这个方法就不适用了。有一个算法思想很适合这个问题的求解,就是“摸着石头过河”的图的遍...原创 2017-09-29 19:29:38 · 357 阅读 · 0 评论 -
2015华为校招机试题
第一题(60分): 按要求分解字符串,输入两个数M,N;M代表输入的M串字符串,N代表输出的每串字符串的位数,不够补0。例如:输入2,8, “abc” ,“123456789”,则输出为“abc00000”,“12345678“,”90000000代码:#include#include#include//华为2015年第一道上机题; void shuchu(原创 2017-09-29 18:04:26 · 271 阅读 · 0 评论 -
c++中的顺序容器
c++中的容器有顺序容器和关联容器,顺序容器中有vector,list,deque这三种,我个人的理解,vector就像是c语言中的数组,当然,这个使用起来是比数组方便很多,集成度更高,list就是数据结构中的链表,而deque则就是数据结构中的双端队列。顺序容器适配器;stack这就是数据结构中的栈,queue这就是数据结构中的队列,还有有优先级管理的队列,priority_queue,这些都是原创 2017-09-20 20:40:09 · 316 阅读 · 0 评论 -
c++中的重载
出现在相同作用域的二个函数如果具有相同的名字而形参不同,则称为重载函数。在这个定义中有二个注意点:1.是在相同的作用域,如果,不在相同的作用域,即使形参不同zhe,也不算作是重载函数:比如一下的例子:void print(const string &s) void print(double d) void f(int value) { void print(i原创 2017-09-19 17:39:46 · 382 阅读 · 0 评论 -
const引用
const引用就是指“指向const对象的引用”,而“非const引用”表示的就是指向非const类型的引用。比如: string s="hello"; string &ss=s;//正确 string &sss="world";//不正确,编译器会报错,因为你将一个const char *要赋值给一个std::string &型,这是不被允许的,也就是将一个只读的字符串赋值给一个原创 2017-09-17 13:27:49 · 2227 阅读 · 0 评论 -
c++中的const成员函数
const成员函数就是在正常的成员函数后面加上了const,这样的目的就是告诉编译器在这个函数中不能修改类中的成员变量,这是通过改变隐含的this形参的类型,使之指向一个只读的对象来完成的。当然,要注意的是,是在本函数内部无法修改类中的成员变量,不是针对整个类或者其他函数的。#include#includeusing namespace std;class f{ priva原创 2017-09-17 13:07:36 · 221 阅读 · 0 评论 -
c专家编程
近来,看了一下《c专家编程》这本书,还是有一点收获吧!也许,我的水平还不适合读这本书吧!但是,将书中的一些注意点记在这儿。1.要使二个赋值形式合法,必须满足一下条件:二个操作数都是指向有限定符或者无限定符的相容类型指针,左边指针所指向的类型必须具有右边指针指向类型的全部限定符。比如:char *cp;const char *cpp;cpp=cp;这样就是可以的,如果cp=cpp翻译 2017-09-15 15:25:03 · 334 阅读 · 0 评论