C++ (1)
来源:互联网 发布:php接收app上传图片 编辑:程序博客网 时间:2024/05/01 14:13
上课总结的一些。记的一些笔记。
C++ is a general purpose programming language that :
~is a better C
~supports data abstraction(数据的抽象描述)
~supports object-oriented programming(面向对象)
~suppots generic programming
所以改用 #include<iostream> using namespace std 对同样一个问题:假设一张超市列的购物单,单价以及数量,有小计有总计。在C中,考虑的是一个数组,计算出每行,然后算出总计结果,好的编程风格会调用两个子函数来计算,这样每种物品都是单独计算的。但是实际上,我们看到一张单子,就是一张单子,不care是怎么计算的。所以将这些连同计算方法一起作为一个整体来看待。 在C++中,是将这两个子函数也作为一个class的一部分(成员函数),而将这些都封装起来。 3 变量命名长度受限于编译器 4 reference引用 格式:int &name = a,则name 就是一个和a一样的变量名。 5 函数调用的本质是初始化操作 6 const 一个const = const or non-const , non-const = non-const. 本质,一个constant不可以用任何形式改变其值,所以不可以赋值给一个变量。 7 new&delete 其本质是新申请或者释放已经存在的空间,指针还是存在,但是已经野了。。。。 new一个数组的时候不能显示初始化。 8 指针本身是long 类型
1 最新的C++标准不提倡.h
2 在思考方式的不同
This_is_a_name C++风格命名
ThisIsAName PASCAL风格
......
本质:一个地址的别名,alternative name.
作用:作为函数的参数,作为函数的返回值,某些时候可以作为左值(当返回值是一个地址名称时).
注意:定义时必须初始化,否则指向一个未知的固定内存单元
EG:
int &func(...)
{
...return &a;
}
int main()
{
...func() = 3;...
}
调用:实参赋值给形参
返回:返回值赋值给一个匿名单元。。。
EG: Type &anonymous = return值。在main()中receiver = anonymous....据我理解机制应该是这样。。
本质:常量,不可改变
注意:
const char *pointer = char const *pointer; 表示指针指向的char是常量,内容不变。但是pointer所指向地址可以改变。
char *const pointer;指针本身是常量,指向地址不变,内容可变。
const修饰其左边的内容。
delete[] pointer;
申请数组释放时注意防止内存泄漏
申请数组时注意pointer指针不能改变,否则无法记录内存地址。。。泄露。
PS:既然不能改变,我觉得干脆直接new一个常量好了。。Type const *pointer = new Type[size]....^_^ 不过不知道行不行。。。试试好了。。C++Primer第四版上P166说可以。
- c/c++--1
- C-1-C基础
- 求1+2+...+n[C/C++/C#]
- C&C++(1) - extern "C"的作用
- C#:1
- c++[1]
- C++#1
- C#(1)
- C.1
- C 1
- c++(1)
- C - 1
- c++(1)
- C-1
- C-1
- 【Deep C (and C++)】深入理解C/C++(1)
- 【Deep C (and C++)】深入理解C/C++(1)
- 【Deep C (and C++)】深入理解C/C++(1)
- 银行业今年百分之百跑赢“大市”
- IE7兼容Iframe高度問題及Iframe問題
- linux进程管理
- 携程网假保单事件升级:又有用户买到假保单
- NE.TIGER2009华服大片
- C++ (1)
- Visual C++代码参考与技巧大全
- 美驻华大使馆辨析“买美国货”条款
- 善用批处理文件
- 自定义工具栏图标
- 80后早期的我们,为什么还拽着青春的尾巴不结婚呢?
- HDOJ 2516 取石子游戏(一堆)
- 使用SecureCRT对Linux vim进行颜色设置【可用的.vimrc文件内容】
- c++实现文件传输之一:框架结构和界面实现