![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++语言学习
qte_acm
这个作者很懒,什么都没留下…
展开
-
c、c++变量在64位机器和32位机器的区别
一、数据类型特别是int相关的类型在不同位数机器的平台下长度不同。C99标准并不规定具体数据类型的长度大小,只规定级别。作下比较:16位平台char 1个字节8位short 2个字节16位int 2个字节16位long 4个字节32位指针 2个字节32位平台char转载 2013-12-18 19:13:58 · 3348 阅读 · 0 评论 -
c++中const用法大全
1、const 修饰普通变量const修饰一个变量,意思就是这个变量是一个常量,不能被改变const int x; //x是一个整形常量const double x; //x 是一个double型常量const 修饰的是一个指针时:const int *x; //x 是一个指向常量整形的指针int *原创 2014-08-13 10:42:31 · 948 阅读 · 0 评论 -
排序二叉树的实现和理解
数据结构的从新学习原创 2014-04-12 17:40:09 · 1607 阅读 · 0 评论 -
赋值运算符函数的返回值类型详解
在c++赋值运算符函数的学习中,对于返回值类型的问题,一直非常费解,今天彻底总结一些每种不同返回值类型的结果:1、当返回值为空时:void hasptr::operator=(const hasptr& s)这个时候如果只有一个‘=’(a = b)运算那就没问题,但是如果存在‘=’(a = b = c)的链式操作时,编译器就会报错我们看:a = b = c;程序会先运行原创 2014-08-02 21:06:09 · 4231 阅读 · 1 评论 -
c++中字符输入函数getline、cin.getline区分
1、cin>>s; s可以是:string s、char s[];这个是ostream中的函数,遇到‘ ’(空格) , '\n'(换行),就会自动结束,因此如果用cin读取字符串,那么这个字符串中不能含有空格和换行。cin因为不识别空格和换行,因此如果在输入字符串的时候,在字符开始处输入了空格或换行,没有任何影响。#include #include #include using原创 2014-07-24 10:24:51 · 3816 阅读 · 0 评论 -
c++11标准中的lambda
在c++11标准中定义了一种新的可调用对象 lambdalambda类似与匿名函数 , 只不过可以通过一种机制(不是参数)来调用一些局部变量 , 这样就能使自身的参数变少,也就能达到STL中某些算法对谓词的要求。lambda的形式:lambda表达式的引入标志,在‘[]’里面可以填入变量,表示lambda要捕获的变量 , 这就是lambda的关键处 。 可以为空l原创 2014-05-27 17:48:14 · 733 阅读 · 0 评论 -
关于动态分配vector指针和使用shared_ptr的vector指针
动态分配的vector指针vector *get_num(int n){ vector *pv = new vector(n+1); int i , x; for(i = 0; i < n; i++) { cin>>x; (*pv)[i] = (x); } return pv;}如果是动态分配的vector原创 2014-07-21 23:59:30 · 12719 阅读 · 0 评论 -
c++类中对数据成员进行初始化和赋值的区别
在c++中定义一个类 ,对于构造函数 我们经常是这么写的:class test{public: test(int n_x , int n_y) { x = n_x; y = n_y; }private: int x , y;};这中写法虽然是合法的但比较草率在构造函数 test(int n_x , i原创 2014-05-14 11:05:47 · 6227 阅读 · 0 评论 -
C++中类的特殊数据成员的构造
1、常数据成员在利用构造函数对常数据成员进行赋值时 , 必须有‘:’在构造函数的后面进行单独复制注意空构造函数 , 也需要对常数据成员进行赋值#include #include using namespace std;class point{public: point():z(0) {} point(int a , int b , int c);原创 2014-03-26 22:10:02 · 807 阅读 · 0 评论 -
c++类中系统默认拷贝构造函数的解析
我们在定义了一个c++类后, 如果我们自己没有写拷贝构造函数 , 那么系统就会系统一个默认的拷贝构造函数 , 但如果我们类中存在指针等地址变量时 , 就会发生意想不到的结构:代码1、调用系统拷贝构造函数:#include #include using namespace std;class point{public: point() {} point(stri原创 2014-03-26 21:34:03 · 1794 阅读 · 0 评论 -
c++中的动态联编
在c++中的动态联编是通过虚函数来实现,但在调用时 , 必须用引用、指针才能实现动态联编例子如下:指针调用#include using namespace std;const double pi = 3.14;class A{public: A() {}; virtual double area() const {return 0.0;}};原创 2014-04-02 22:56:57 · 1516 阅读 · 0 评论 -
数据结构中排序方法汇总
对所学排序的总结原创 2014-04-17 17:32:07 · 1111 阅读 · 0 评论 -
B树的理解和实现
对数据结构的从新学习,发现数据结构真是一本好课程啊,后悔当初上课的时候没有认真学习。原创 2014-04-16 19:39:11 · 1092 阅读 · 0 评论 -
c++继承中析构函数的调用顺序
在继承中的析构函数主要遵从一下四点规则:1、首先调用派生类的析构函数(清理派生类的新增成员)2、如果派生类中有子对象 , 则再调用派生类中子对象的析构函数 , 调用顺序是:在派生类中,先定义后调用。(清理派生类新增的成员对象)3、再调用普通基类的析构函数(清理从基类继承来的新增成员)4、最后调用虚基类的析构函数#include using namespace std原创 2014-03-30 16:28:18 · 4475 阅读 · 0 评论 -
c++笔记——运算符重载
运算符重载在c++中是经常用到的一个原创 2014-08-14 16:08:41 · 877 阅读 · 0 评论