1,编译:C++是一种编译语言。
转化过程由一个称为编译器的程序来做,
计算机可执行的东西称为可执行代码,目标代码,或者机器代码。目标代码的后缀window 是.obj Unix是.o
2,过程:C++源代码:hello_world.cpp -> C++编译器 -> 目标代码:hello_world.obj -> 链接器 -> 可执行程序:hello_world.exe
IDE(集成开发环境):一般包含编辑器,编译器,调试器和图形用户界面。
3,内存中的比特的含义完全依赖于他所访问的类型。
4,记得初始化变量是一个编程的好习惯。
5,c++中类型的安全转化:
bool -->char bool-->int bool-->double char-->int char-->double int-->double
6,c++中也允许不安全转换。(下面是编译器接受的不安全转化,也称为窄化)
double -->int double-->char double-->bool int-->char int-->bool char-->bool
7,程序的组织手段主要是把一个大的计算任务划分为许多小任务,这一技术主要包括两类方法:1>抽象2>分治
8,一个constexpr 符号的常量必须给定一个在编译时已知的值。(c++98不支持constexpr)
若某个变量在初始化时的值在编译时未知,但初始化后也绝不改变,c++提供了第二种形式的常量(const)
例如: int n;
constexpr int c1 = max + 19;
// constexpr int c2 = n + 7; //这句话是错误的!
const int c2 = n + 7; //这句话是正确的,但是c2的值是不可以改变的。 例如在给c2赋新值就是错误的。
注意:编程能够让你理解世界上没有绝对的事情。
9,switch>..case语句中case语句中的值必须是常量,而且不能重复。
10,使用函数的优点
1>实现计算逻辑的分离
2>使代码更清晰
3>利用函数,使同样的代码在程序中可以被多次使用
4>减少程序调试的工作量
c++提供了一种与函数定义分离的方法来显示函数的信息,称为函数声明
11,vector :是一组可以通过索引来访问的顺序存储的数据元素。(python中字典相似)
vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组
当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间的目的.
详细介绍网址:https://blog.csdn.net/hancunai0017/article/details/7032383
vectorv"知道自己的大小",即vector不仅存储数据的元素,也存储数据的个数。
表示方式:vector
特殊:给定大小的vector被定义后,给每个元素赋予不同的缺省值。
例如:vector
vector
遍历vector的简单方式:
vector
for(int x:v)
cout<
添加到vector的最后一个元素。
12,C++中的using namespace std的作用
namespace:是指标识符的各种可见范围。
C++标准程序库中的所有标识符都被定义于一个名为std的namespace中。
C++标准为了和C区别开,也为了正确地使用命名空间,规定头文件不使用后缀.h
使用
详细理解网址:https://blog.csdn.net/slj_win/article/details/26351419
#include
#include "stdlib.h"
#include "stdio.h"
#include "string.h"
#include
#include
using namespace std;
int square(int i);
int area(int length,int width);
int main() {
/*
std::cout << "Hello, World!" << std::endl;
std::cout << "请输入你的姓名:\n"; //请输入你的姓名
std::string first_name,second_nam;
int ma = 60;
std::cin >> first_name >> second_nam;
std::cout <<"hello "<>current) {
++number_word;
if (previous == current)
std::cout << "word number" <<" "<< number_word << " "<< "repeated:" << current << "\n";
previous = current;
}
char c = 'x';
int i1 = c;
int i2 = 'x';
char c2 = i1;
std::cout<< c << ' ' << i1 << ' ' << c2 << ' ' << i2 <<'\n';
double x{2.7};
int y(x); //将double型2.7窄化为2
int a{1000}; //本IDE窄化出错结果不显示
char b = a;
std::cout< words;
while (cin>>word){
if(word == "exit")
break;
words.push_back(word);
}
for (int i = 0; i
出现问题:对perror函数不太明确
cout<<"面积二:"<int area(int length,int width){ if(length<=0||width<=0) perror("error"); return length*width; }