C++的头文件是没有(.h)的,使用g++ 来编译c++ 文件,
using namespace std; // 展开标准命名空间;
cout 和 cin 都是标准命名空间std 中的;
练习:
输入一个字符
如果是大写,转换成小写
如果是小写,转换成大写,
如果是数字,输出对应的整数
其他的都输出 '#'
1 #include
2 using namespace std;
3
4 int main(){
5 char c;
6 std::cin>>c;
7 if(c>='a' && c<='z'){
8 c = c‐('a'‐'A');
9 std::cout<< c <
11 c = c+('a'‐'A');
12 std::cout<< c <
14 std::cout<< c‐'0' <
16 std::cout<<"#"<
18 }
new/delete 和 malloc/free的区别:
new/delete是关键字。malloc/free 是库函数;
new/deletee 可以不初始化,默认初始化是0,malloc/free不初始化是随机值,需要手动调用memset或者bzero;
new/delete 可以在分配空间的时候并且初始化,malloc/free不可以;
new会自动计算分配类型的大小,而malloc需要调用sizeof计算
new是要返回什么类型指针就返回什么类型,而malloc 返回void * , 需要强转;
new会调用构造函数,malloc不会;
delete会调用析构函数,free不会;
函数重载:函数名字相同,形参列表必须不同(类型,个数,都可以)
缺省参数:遵循靠右原则,
哑元:在函数的参数中,某个或者某几个参数,只有类型没有参数名,只起到占位的作用,
自增自减运算符重载会用到哑元。
内联函数(inline):会告诉编译器将函数在调用处打开。
内联函数只能定义在 .h文件中,不能定义在 .cpp 文件中。
内敛函数一般体积比较小,函数逻辑比较单一;
内联函数和带参宏的区别:
宏定义是在预处理阶段完成的,内联函数是在编译阶段完成的
宏定义只是替换,内联函数也是函数,也会完成类型的检查;
t
类:
是由结构体演化而来的
class 类名{
public:
provite:
protect:
};
面向对象的3大特征:封装 继承 多态, 如果有4再加一条抽象
类的成员函数可以访问类的成员变量
如果类中没有写访问权限,默认是private
对于函数可以类内声明,类外定义,在定义时需要加 类名::



