c++基础知识
2017-07-06 22:07
218 查看
c++在很多地方和c语言类似。c++中的一些数据类型和c语言相同,比如:short、int、long、char、float等。再去爱这里介绍一下c++的bool型变量,bool型变量的值不是0就是1,单独的bool变量大小为1字节。
c++的语句有循环语句:for、while、do-while;选择语句:switch;单分支语句:if等。c++的头文件是#include<iostream>,cin是c++的标准输入,cout是c++的标准输出,c++中有另外一种字符串定义:string str。
c++中动态内存的释放一般使用new和delete这一对运算符。
new: int *p;
p = new int;
前后的数据类型要一致,如果申请成功,返回分配好的内存空间的首地址给指针,分配一个4字节的内存空间(因为int型是4字节)。对应的delete操作就是:delete p;
new:
int *p;
p = new int[50];
分配了50个4字节的内存空间存放int数据;对应的delete操作就是:delete[] p。
using namespace std;这句代码表示使用std命名空间,因为c++的标准库的内容都被定义在std空间。namespace中文意思是命名空间或者叫名字空间,传统的C++只有一个全局的namespace,但是由于现在的程序的规模越来越大,程序的分工越来越细,全局作用域变得越来越拥挤,每个人都可能使用相同的名字来实现不同的库,于是程序员在合并程序的时候就会可能出现名字的冲突。namespace引入了复杂性,解决了这个问题。namespace允许像类,对象,函数聚集在一个名字下。本质上讲namespace是对全局作用域的细分。
name NA
{
void print()
}
name NB
{
void print()
}
int main()
{
NA::print();
NB::print();
return 0;
}
c++的类
class struct student
{
public:
char *name;
int age;
void print()
};
如果在类的定义中既不指定private,也不指定public,则系统就默认为是私有的。
被声明为私有的(private)成员,只能被本类中的成员函数引用,类外不能调用(友元类除外)。
被声明为公用的(public)成员,既可以被本类中的成员函数所引用,也可以被类的作用域内的其他函数引用。
用protected声明的成员称为受保护的成员,它不能被类外访问(这点与私有成员类似),但可以被派生类的成员函数访问。
c++函数的重载:
允许同名函数的存在,但是形参个数不同;或者形参个数相同,形参类型不同;或者形参个数和类型都不同。
int max(int, int);
double max(double, double);
int max(int, int, int);
在c++中存在带默认值的参数。
如果一个函数既有声明又有定义时,不允许有默认值;但是函数只有定义时,可以存在默认值并且默认值必须从左向右定义,中间不能有间隔。
int max(int a, int b = 1, int c = 2)
int max(int a = 0, int b = 1, int c = 2)
//这个定义是对的
int max(int a = 0, int b, int c = 2)
int max(int a = 0, int b = 0, int c)
//这个定义是错的
切记:默认值在main函数中可以被重新指定。
c++的语句有循环语句:for、while、do-while;选择语句:switch;单分支语句:if等。c++的头文件是#include<iostream>,cin是c++的标准输入,cout是c++的标准输出,c++中有另外一种字符串定义:string str。
c++中动态内存的释放一般使用new和delete这一对运算符。
new: int *p;
p = new int;
前后的数据类型要一致,如果申请成功,返回分配好的内存空间的首地址给指针,分配一个4字节的内存空间(因为int型是4字节)。对应的delete操作就是:delete p;
new:
int *p;
p = new int[50];
分配了50个4字节的内存空间存放int数据;对应的delete操作就是:delete[] p。
using namespace std;这句代码表示使用std命名空间,因为c++的标准库的内容都被定义在std空间。namespace中文意思是命名空间或者叫名字空间,传统的C++只有一个全局的namespace,但是由于现在的程序的规模越来越大,程序的分工越来越细,全局作用域变得越来越拥挤,每个人都可能使用相同的名字来实现不同的库,于是程序员在合并程序的时候就会可能出现名字的冲突。namespace引入了复杂性,解决了这个问题。namespace允许像类,对象,函数聚集在一个名字下。本质上讲namespace是对全局作用域的细分。
name NA
{
void print()
}
name NB
{
void print()
}
int main()
{
NA::print();
NB::print();
return 0;
}
c++的类
class struct student
{
public:
char *name;
int age;
void print()
};
如果在类的定义中既不指定private,也不指定public,则系统就默认为是私有的。
被声明为私有的(private)成员,只能被本类中的成员函数引用,类外不能调用(友元类除外)。
被声明为公用的(public)成员,既可以被本类中的成员函数所引用,也可以被类的作用域内的其他函数引用。
用protected声明的成员称为受保护的成员,它不能被类外访问(这点与私有成员类似),但可以被派生类的成员函数访问。
c++函数的重载:
允许同名函数的存在,但是形参个数不同;或者形参个数相同,形参类型不同;或者形参个数和类型都不同。
int max(int, int);
double max(double, double);
int max(int, int, int);
在c++中存在带默认值的参数。
如果一个函数既有声明又有定义时,不允许有默认值;但是函数只有定义时,可以存在默认值并且默认值必须从左向右定义,中间不能有间隔。
int max(int a, int b = 1, int c = 2)
int max(int a = 0, int b = 1, int c = 2)
//这个定义是对的
int max(int a = 0, int b, int c = 2)
int max(int a = 0, int b = 0, int c)
//这个定义是错的
切记:默认值在main函数中可以被重新指定。
相关文章推荐
- C++基础知识(二)
- C++相关基础知识(转贴)
- c++基础知识---名字空间
- C++基础小知识[2]---堆与栈的区别[转]
- C++ 基础小知识学习[1]
- c++ 的11个要点基础知识
- C++基础知识(三)——函数
- 您需要注意的c++ 的11个要点[转贴] 基础知识
- 基础知识C++
- C/C++基础知识:typedef用法小结
- C/C++语言基础知识总结
- C++ 人工智能算法系列一(神经网络算法基础知识)
- C++的基础知识
- C++学习(4)--基础知识(4)--关于const
- 自己总结C/C++的一些容易被遗忘的基础知识!
- Jack整理的Win32汇编基础知识 - [C/C++]
- C++学习笔记——基础知识
- C++基础知识
- c++基础知识
- C/C++ 基础知识学习笔记 (不断更新中)