- 博客(18)
- 收藏
- 关注
原创 指针与引用
C++指针,引用:对于引用int iTemp_1 = 10;int &Temp = iTemp_1;此时 Temp是作为iTemp_1的引用; 引用相当于变量的别名他需要一个"变量"来"初始化"自己 而且"在定义引用的时候必须初始化";此时 Temp和iTemp_1就维系在了同一个值上; 而且引用"不需要内存";作用: 一般来说 引用的作用主要是两种-->函
2014-09-25 12:18:32
353
原创 位域的使用
位域:C++中有一种被称为 位域( bit_field )的特殊类数据成员他可以被声明用来存放特定数目的位, 他可以是有符号也可以是无符号"一般来说 把位域设置为无符号类型,,如果设置为有符号类型 会有符号位干扰"以下是参考程序:#include "head.h"#include using namespace std;class BitFile{
2014-09-25 12:17:30
359
原创 类的特性
/*******************************类的继承*******************************/class Animal{ public: void eat() { std::cout } protected: void sleep() { std::cout } pri
2014-09-25 12:16:52
310
原创 正则表达式
/正则表达式:第一讲 字符: "普通字符" : 大部分的字符 包括字母和数字 他们只能匹配他们自己 "元字符" : 他们可以匹配其他字符 元字符: 点元字符 "." : 他表示他可以匹配任意字符 • c.t 可以匹配cat, cot, cit, 甚至可以匹配 c.t ;但不可以匹配换行符 反斜杠元字符 "\" : 他可以忽略元字符 使得元字符可以
2014-09-25 12:16:18
355
原创 大小端与栈方向
大小端模式和栈生长方向:首先 栈是向下生长的 所以画栈的时候 上面是高地址 下面是地地址; 然后数据从上往下画;大小端:---> 大端: 是指 数据的"高位" 保存在内存的"低地址"中, 而数据的"低位" 保存在内存的"高地址"中---> 小端: 是指 数据的"高位" 保存在内存的"高地址"中, 而数据的"低位" 保存在内存的"低地址"中从下面的程序 CheckAddr
2014-09-25 12:16:15
629
原创 C++变量存储区
//*************** 以下数据基于VS2012 Windows8.1 ***************////***************************///全局有初值int g_i = 100; // 0x001b8000int g_j = 200; // 0x001b8004//****************
2014-09-25 12:15:37
352
原创 str函数使用
#include #include int main( int argc, char *argv[] ){ char str1[20] = "Hello"; char str2[] = "World1234"; strcpy_s( str1, str2 ); // 把 str2 复制到 str1 的位置, 如果溢出 会崩溃 std::cout << str1 <<
2014-09-25 12:14:51
430
原创 sprintf的用法
#include #include #include #include int main( int argc, char *argv[] ){ char str1[] = "miaolegeguagua"; char str2[] = "qwerqwerqwerqwer"; char str3[40]; sprintf_s( str3, "%s%s", str1, str2 )
2014-09-25 12:13:59
444
原创 C++异常
C++错误机制:/-----------------------------------------------------------------------------------/"调用abort()"如果这么做 程序直接爆炸:#include using namespace std;double Div( int nLeft, int nRight )
2014-09-25 12:13:03
313
原创 C++类型
对于变量:C/C++中的变量类型: |--> 字符型 char ( 1字节 ) |--> 短整型 short ( 2字节 ) |--> 整形 --> |--> 整形 int ( 4字节 ) | |--> 长整型 long ( 4字节 )
2014-09-25 12:12:02
314
原创 C++类型转换
强制转换:对于标准C来说 强制转换为 (type-id)对于C++来说 提供了另一种强制转换 static_cast、dynamic_cast、reinterpret_cast、和const_cast---> static_cast ( expression )该运算符把 expression 转换为 type-id 类型 但没有运行时类型检查来保证转换的安全性-> 用
2014-09-25 12:10:18
361
原创 C++11可变参数函数与for循环
//auto为自动变量类型设置符 例如 auto p = 1; 则p为int类型; auto自动适应类型//对于template 说 参数表是一个T类型和一个 ...Args类型打包//对于 void func( T value, Args ... args ) 说 参数表是一个T类型的数据value和一个Args类型打包的数据打包args//那么进行调用 func( n
2014-09-25 12:09:21
1163
原创 深度搜索C++对象模型 - 构造语义学
深度搜索C++对象模型: 构造,拷贝,析构语义学//*********************************************************************************************//---> "构造函数语义学":class A{ public: virtual ~A() = 0; v
2014-09-21 09:27:17
448
原创 深度搜索C++对象模型 - 数据语义学
深度搜索C++对象模型: Data Semantics//*********************************************************************************************//---> "虚拟继承的 sizeof 问题":class X { };class A : virtual public X {
2014-09-21 09:25:01
421
原创 深度搜索C++对象模型 - 函数语义学
深度搜索C++对象模型: Function SemanticsC++支持三种类型的 member function: static nonstatic virtual; 后文分析他们的差异//*********************************************************************************************//
2014-09-21 09:24:20
514
原创 深度搜索C++对象模型 - 复制构造函数
深度搜索C++对象模型: 复制构造函数由构造函数篇可以猜到, 复制构造函数其实也"不一定"会被编译器产生..提到复制,自然是类成员之间的复制, 有三种情况 会把一个 class object 的内容作为另一个 class object 的初值:--> 对一个 class object 做显示的初始化操作:class A { };A a;A b = a;--> 对
2014-09-21 09:24:11
348
原创 深度搜索C++对象模型 - 构造函数
深度搜索C++对象模型: 构造函数Default Constructor 构造函数:C++ARM告诉我们: Default Constructor在需要的时候被编译器产生出来.关键字: 在需要的时候 --> 被谁需要 需要来干什么? 例子:class Foo{ public: int m_val; Foo *next;};void FooBa
2014-09-21 09:23:17
480
原创 深度搜索C++对象模型 - 关于对象
深度搜索C++对象模型:关于对象:在C语言中 "数据" 和 "处理数据的操作(函数)" 是分开来声明的;也就是说 语言本身并没有支持"数据和函数"之间的关联性;我们把这种程序方法成为"程序性的"; 有一组"分布在各个以功能为导向的函数中"的算法所驱动, 他们处理的是共同的外部数据;而C++则会考虑使用一种独立的"抽象数据类型" ADT 来实现一些"数据和函数的关联性"; (
2014-09-21 09:20:37
599
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅