前言:
学习硬件开发的过程中,许多官方开发例程,库函数定义都是采用C++的语法格式,故此学习补漏。
学习参考教材C++ Primer plus 第六版
基础
1.什么是C++?
C++是在C语言基础上开发的一种集面向对象编程、泛型编程和过程化编程于一体的编程语言,是C语言的超集。
2.C和C++的不同
c++在c语言的基础上新增了许多特性,包括:
- 类和对象
- 继承
- 多态、虚函数和RTTI(运行阶段类型识别)
- 函数重载
- 引用变量
- 泛型(独立于类型的)编程,这种技术是由模板和标准模板库(STL)提供的
- 处理错误条件的异常机制
- 管理函数、类和变量名的名称空间
从上可以看出,c++和java有许多类似之处,如果你有java和c的基础,学习c++能很快上手
3.第一个例程
#include <iostream>
int main()
{
using namespace std;
cout << "hellow world!";
cout << endl; //换行
cout << "this my first c++ program.";
cin.get(); //保持窗口
return 0;
}
c++能够使用c的printf(),scanf()等所有标准c的输入输出函数,前提是包含了库<stdio.h>,不过因为是学习C++,故不多做使用了,而cout函数,就是c++的输出函数
上述程序示例中包含:
- 注释,有前缀//标识
- 预处理编译指令#include
- 函数头 int main()
- 编译指令 using namespace
- 函数体 用{ }括起
- cout 函数 输出
- return语句 结束程序
int main(void)
在c++中,这和int main()
等效,即不接受任何参数。
在c中,让括号空着意味着对是否接收参数保持沉默
return 0;
这条隐含的返回语句仅适用于main()
函数
感觉笔记记得太详细了,之后还是只记录关于语法相关吧
注释格式:
//
/* … */
iostream.h
使用cout(输出),cin(输入),就必须导入iostream
<<插入运算符,>>抽取运算符
using
如果使用iostream,而不是iostream.h,则应使用下面的名称空间编译指令来使iostream中的定义对程序可用
格式:using namespace std;
名称空间
调用某空间的某函数:
名称空间::函数名;
std::cout;
省略空间名前缀:
using namespace std; //提前声明
这样就可以直接使用cout了
只使所需的个别函数可用:
using std::cout; //使用时直接cout,不需前缀
using std:endl;
using std::cin;
使用cout进行c++输出
输出字符串:cout << String;
字符串需加双引号
输出变量:cout << 变量名;
这一点上,比c的printf()更加方便
拼接:cout << "hello" << time <<"world" << endl;
cout << endl; //换行
endl是个特殊的控制字符,与cout << "\n";
等效
使用cin进行输入
cin >> 变量名
,赋值给变量
类
类使c++中面向对象编程(OOP)的核心概念之一(对java也是如此)