C++ 是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的编程语言,支持过程化编程、面向对象编程和泛型编程。
C++ 被认为是一种中级语言,它综合了高级语言和低级语言的特点。
C++ 是由 Bjarne Stroustrup 于 1979 年在新泽西州美利山贝尔实验室开始设计开发的。C++ 进一步扩充和完善了 C 语言,最初命名为带类的C,后来在 1983 年更名为 C++。
C++ 是 C 的一个超集,事实上,任何合法的 C 程序都是合法的 C++ 程序。
注意:使用静态类型的编程语言是在编译时执行类型检查,而不是在运行时执行类型检查。
标准的 C++ 由三个重要部分组成:
把客观的事务抽象成一个类(将数据和方法打包在一起,加以权限的区分,达到保护并安全使用数据的目的)
继承所表达的是类之间相关的关系,这种关系使得对象可以继承另外一类对象的特征和能力
多态性可以简单地概括为“一个接口,多种方法”,字面意思为多种形态。程序在运行时才决定调用的函数,它是面向对象编程领域的核心概念
ANSI 标准是为了确保 C++ 的便携性 —— 您所编写的代码在 Mac、UNIX、Windows、Alpha 计算机上都能通过编译。
由于 ANSI 标准已稳定使用了很长的时间,所有主要的 C++ 编译器的制造商都支持 ANSI 标准。
微软出品,官网:https://visualstudio.microsoft.com/zh-hans/
#include<iostream>
using namespace std;
int main() {
cout << "HelloWorld!" << endl;
system("pause"); // 实现按任意键继续
return 0;
}
c++和java一样,都有单行注释和多行注释
//i input 输入 o output输出 stream流 输入输出流头文件(类似stdio.h)
#include<iostream>
//std(标准) 使用标准的命名空间
using namespace std;
/*
这是程序的入口main函数
每一个cpp程序里面都会有且只有一个main函数
*/
int main() {
//输出语句
cout << "HelloWorld!" << endl;
system("pause");
return 0;
}
#include
; 预编译指令,引入头文件 iostream
防止头文件重复包含,在.h头文件第一行声明:#pragma once
#include<iostream>
// 程序使用std基本命名空间,是为了可以使用cout和endl
int main(){
std::cout << "你好" << std::endl;
return 0;
}
在 c++中,名称(name)可以是符号常量、变量、函数、结构、枚举、类和对象等等。工程越大,名称互相冲突性的可能性越大。另外使用多个厂商的类库时,也可能导致名称冲突。为了避免,在大规模程序的设计中,以及在程序员使用各种各样的 C++库时,这些标识符的命名发生冲突,标准 C++引入关键字 namespace(命名空间/名字空间/名称空间),可以更好地控制标识符的作用域。
#include <iostream>
using namespace std;
//命名空间只可以在全局范围定义,不可以在函数里面定义
namespace A{
int a = 10;
string test(){
return "命名空间A的test方法";
}
}
namespace B{
int a = 20;
string test(){
return "命名空间B的test方法";
}
}
int main(){
// 使用作用域运算符,可以调用指定命名空间的属性或函数
cout << A::a << endl;
cout << A::test() << endl;
cout << B::a << endl;
cout << B::test() << endl;
return 0;
}
只可以在本文件内使用
#include <iostream>
using namespace std;
namespace{
int a = 10;
}
int main(){
cout << a << endl;
return 0;
}
#include <iostream>
using namespace std;
namespace A{
int a = 10;
}
int main(){
namespace B = A;
cout << B::a << endl;
return 0;
}
#include <iostream>
using namespace std;
namespace A{
int a = 10;
}
int main(){
//声明本文件从当前位置开始使用命名空间A
//但是这么使用一定要注意,容易引起冲突
using namespace A;
//如果已经在文件中声明使用命名空间,就可以不写作用域运算符
cout << a << endl;
return 0;
}