一、C++语言的特色
它是C语言的继承,尽可能兼容C语言,既保持了C语言的简洁和高效,能够像C语言那样进行结构化程序设计,同时也加强了C语言对类型的处理。
加入了面向对象的特征,能够进行以抽象数据类型为特色的基于对象的程序设计,还能够进行以继承和多态为特色的面向对象的程序设计。ios
二、与C语言相比,C++语言的优势:
(1)从程序运行的稳定性来讲,C++语言比C语言更安全,它支持过程化编程、面向对象编程和泛型编程。由于可以支持面向对象的开发方式,因此C++语言的应用领域更加普遍。
(2)C++语言可运行于多种平台上,如Windows、MAC操做系统及UNIX的多种版本。
(3)C++语言中加入了面向对象的概念,虽然C语言的语法绝大部分都被保留在C++语言中,但C++的程序结构与C语言的程序结构存在很大差异。C++语言对C语言作了不少改进,C++语言相对于C语言的最根本的变化是引进了类和对象的概念。编程
C++工程中只能有一个main() 函数安全
一、基本的输入/输出函数
在C++中,可使用流提取运算符“>>”从标准输入设备键盘取得数据。spa
void cinAndCout(){ int x=0; cin>>x; cout << "Hello, World!=>" << x << endl; }
真题:已知:"int a=5;char c='a';"则输出语句cout<<c+1<<a<<c;的显示结果是(985a) 解答:'a'+1 是一个算数运算,a转为int 对于的ascII 吗是97 因此 c+1=98操作系统
二、头文件设计
头文件:在C++中一个C++源文件若是要使用其余C++文件的内容,那么他必须包含其头文件,使用#include指令code
当使用尖括号时,C++编译器将首先在C++系统设定的目录中寻找要包含的文件,若是没有找到,再到指令中指定的目录中去查找。采用双引号时,C++编译器在用户当前目
录下或指令中指定的目录下寻找要包含的文件。例如,要包含e:\myprog目录下的头文件ex1.h,相应的语句以下:#include"e:\myprog\ex1.h“对象
经常使用的头文件有如下一些。blog
#include <iostream> #include <string> #include"e:\myprog\ex1.h“
三、命名空间
C++中为了不名字定义冲突,特别引入了“命名空间”的定义,即namespace。命名空间的做用是为了消除同名引发的歧义。 using namespace std;
namespace 命名空间名{
命名空间内的各类声明(函数声明、类声明、……)
}
namespace MyTest{ int add(int a,int b){ return a+b; } } int main() { int m=MyTest::add(1,3); cout << "m=:" << m << endl; return 0; }
四、C++中的基本数据类型
整型:整形包括短整型、整形和长整形。
浮点型:浮点型包括单精度型和双精度型。
字符类型:在各类不一样系统中,字符类型都占一个字节(8位)。例如: char c='a'; 也能够用字符对应的ASCII码赋值,如:char c=97;
#include <typeinfo> void number(){ int num_I=10; long num_L=12; short num_s=20; float num_f=12.3; double num_d=12.3; char num_c='A'; cout<<"type"<< typeid(num_I).name()<<endl; }
五、数据类型转换
强制类型转换(显式类型转换):static_cast用于将一种数据类型转换成另外一种数据类型,使用格式以下:static_cast<类型名>(表达式)其功能是把表达式转换为类型名所指定的类型。static_cast也能够省略。
int oneInt2=static_cast<int>(12.34); //强制类型转换 int oneInt3=int(12.34); //强制类型转换运算符的新形式 int oneInt4=(int)12.34; //强制类型转换运算符的旧有形式 int oneInt5=12.34; //自动类型转换
隐式类型转换:
long num_L=12; double num_d=12.3; cout<<"type="<< typeid(num_L+num_d).name()<<endl; // d double 类型
六、C++程序的编辑步奏
编写C++程序通常需通过的几个步骤依次是:编辑、编译、链接、运行