初识c++
2012-08-16 09:56
260 查看
由于考试的原因,开始接触c++语言,因为有java基础,所遇在学习c++如入门的时候就比较简单。都是面向对象的思想。
错误
浏览了下第一章,觉得暂时难以理解的就是引用了,简单的引用知道一点点,复杂的还是不懂。然后写了几个小例子,就是很简单的输入输出。在编译的时候会出错,现在总结下错误原因
1:写标准头文件的时候出问题 #include <iostream> 在练习的时候写成了 #include <iostream.h> 在c++中不需要写.h后缀
2 :在使用cin 和 cout的时候没有声明std,直接使用报错 。
解决办法:1 在使用标准库之前先声明命名空间 using nampsace std 然后直接使用cout<<"输出内容"
2 或者直接通过这种方式使用 std::cout<< 输出 std::cin>>输入
3:void main(){}方法报错,因为在某些书上看到有这种写法,所以尝试了下,没有返回值的main方法,但是不能通过软件编译(devc++),
解决办法:如果不需要返回值就直接写成 main(){}格式,如果有返回值,则写成:返回值类型 main(){}
在写完程序编译完成运行之后,控制台总是一闪而过(我所使用的软件是devc++),我不知道是什么原因,但是我就使用system("pause");让程序暂停以显示输出结果。
const关键字的作用
1 在常量表达式中代替宏定义。例如 const int d = 10;注意:变量必须初始化,#define 也可以修饰常量 #define PI 3.14159
2 当一个变量在生命周期中的值不会改变,则用const修改该变量,提高程序安全性。
注意:被const修饰的变量不能改变值,除非该变量也被extern修饰 了。const int d;错误 extern const int d;可以
预处理语句
所有的预处理语句都以“#”开头。c++中预处理有三种,宏定义、文件包含和条件编译。
函数重载
函数重载相关因素:函数名一样,参数不一样(个数以及类型都可以不一样),和返回值无关 比如:int max(int a, int b) double max(int a, int b)这两个函数是无typedef法构成重载的
引用
引用的申明方式: 数据类型& 别名 = 对象名
理解:
1 引用实际就是变量的别名,引用地址一样.,引用和变量名在使用的形式上 完全一样,引用是作为一种标志对象的手段,不能声明对数组的引用,也不能声明引用的引用,不能有空引用。
虽然不能直接引用数组,但是可以通过type def实现,比如 typedef int array[10]; 定义了一个int型的数组类型array标识符,然后可以使用他来定义数组的引用 array a; array & b = a;
2 引用的作用和之中呢有相似之处。它会对内存地址上存在的变量进行修改,但是不是使用新的地址,从而节省开销。但是引用比指针安全性更高。
错误
浏览了下第一章,觉得暂时难以理解的就是引用了,简单的引用知道一点点,复杂的还是不懂。然后写了几个小例子,就是很简单的输入输出。在编译的时候会出错,现在总结下错误原因
1:写标准头文件的时候出问题 #include <iostream> 在练习的时候写成了 #include <iostream.h> 在c++中不需要写.h后缀
2 :在使用cin 和 cout的时候没有声明std,直接使用报错 。
解决办法:1 在使用标准库之前先声明命名空间 using nampsace std 然后直接使用cout<<"输出内容"
2 或者直接通过这种方式使用 std::cout<< 输出 std::cin>>输入
3:void main(){}方法报错,因为在某些书上看到有这种写法,所以尝试了下,没有返回值的main方法,但是不能通过软件编译(devc++),
解决办法:如果不需要返回值就直接写成 main(){}格式,如果有返回值,则写成:返回值类型 main(){}
在写完程序编译完成运行之后,控制台总是一闪而过(我所使用的软件是devc++),我不知道是什么原因,但是我就使用system("pause");让程序暂停以显示输出结果。
const关键字的作用
1 在常量表达式中代替宏定义。例如 const int d = 10;注意:变量必须初始化,#define 也可以修饰常量 #define PI 3.14159
2 当一个变量在生命周期中的值不会改变,则用const修改该变量,提高程序安全性。
注意:被const修饰的变量不能改变值,除非该变量也被extern修饰 了。const int d;错误 extern const int d;可以
预处理语句
所有的预处理语句都以“#”开头。c++中预处理有三种,宏定义、文件包含和条件编译。
函数重载
函数重载相关因素:函数名一样,参数不一样(个数以及类型都可以不一样),和返回值无关 比如:int max(int a, int b) double max(int a, int b)这两个函数是无typedef法构成重载的
引用
引用的申明方式: 数据类型& 别名 = 对象名
理解:
1 引用实际就是变量的别名,引用地址一样.,引用和变量名在使用的形式上 完全一样,引用是作为一种标志对象的手段,不能声明对数组的引用,也不能声明引用的引用,不能有空引用。
虽然不能直接引用数组,但是可以通过type def实现,比如 typedef int array[10]; 定义了一个int型的数组类型array标识符,然后可以使用他来定义数组的引用 array a; array & b = a;
2 引用的作用和之中呢有相似之处。它会对内存地址上存在的变量进行修改,但是不是使用新的地址,从而节省开销。但是引用比指针安全性更高。
相关文章推荐
- C++ —— 初识C++
- 【转】玩转Google开源C++单元测试框架Google Test系列(gtest)之一 - 初识gtest
- C++:链表(初识链表)
- 【001】初识C++ (一)
- 初识C++之指针与引用
- C++STL&GP学习后记——初识STL
- 有章法的学习c++(2)初识输入输出
- 初识c++的类
- C++ c++初识
- 初识C++
- 【转】玩转Google开源C++单元测试框架Google Test系列(gtest)之一 - 初识gtest
- 初识C++
- 【c++笔记】一 初识c++
- C++ 1st -- 初识C++
- 初识C++的类
- 【第八章—第十一章】【初识C++ Accelerated C++ 学习笔记】
- c++ 初识文件
- C++基础<01>—C++初识
- C++杂谈(二)初识vector容器与迭代器
- [转]初识 Embedded Visual C++ (by fllsoft)