设为首页 加入收藏

TOP

c++学习笔记(新手学习笔记,如有错误请与作者联系)
2018-10-21 16:08:51 】 浏览:40
Tags:学习 笔记 新手 错误 作者 联系

逗号”,“运算符:a = 公式1,公式2;把公式1的结果放进公式2中进行运算,如:

a = 3*5 , a*4;

计算结果:a = 3*5*4=60;

typedef:类型别名,为已有类型另外命名

typedef  已有类型名 , 新类型名

using 新类型名 = 已有类型名

如:

  tepedef double Area , Volume;
  using Area = double;

枚举类型:将全部可取值一一列举出来(不限定作用域类型说明,继承于c语言)

词法形式:emum 枚举类型名 {变量值列表},如: 

enum Weekday {SUN,MON,TUE,WED,THU,FRI,SAT} 

默认值:从0开始,一次递增,如:0,1,。。。

  可以在定义的过程中给枚举赋初始值,后面依旧依次递增,如:  

enum Weekday {SUN,MON,TUE=10,WED,THU,FRI,SAT}

  则,该枚举的值应依次为{0,1,10,11,12,13,14}

auto类型和decltype

  auto:编译器通过初始值自动推断变量的类型

  decltype:定义一个变量与某一表达式的类型相同,但并不用该表达式初始化变量

  例如:auto val = val1+val2;

      auto的类型取决于val1+val2的类型

    decltype(i) j = 2;

      定义变量j,其初始值为2,类型与i相同

  

 析构函数:

构造函数:对象在创建的时候自动调用的一个函数
析构函数:对象释放的时候自动调用的一个函数

特点:

1.析构函数的参数列表必须是void,不带有参数

2.析构函数没有重载

3.默认的析构函数什么都不做,类比于默认的构造函数

创建方式:

~类名()
{
}

对于一个指针对象时,在delete释放对象时才能被调用。

临时对象:

临时对象的创建方式:类名(参数);
作用域只是当前语句。

 

关于new和malloc,delete和free

参数:malloc需要显示地指出所需内存的尺寸,而new不需要,使用sizeof来实现

返回类型:new的返回值类型为指针,不需要强制类型转换,而malloc返回值为void*指针,因此需要强制类型转换为我们所需要的

如:CStu* cs = (CStu*)malloc(sizeof(CStu));

转载:https://blog.csdn.net/nie19940803/article/details/76358673

同理,delete可以触发析构函数,而free不能触发析构函数

 

this指针:

如:  

this->a = a;

this表示这个类中,前面申明的a,后面的a表示该局部变量中的a

相当于java中的 :    this.a=a;

                    

 静态成员变量,类外初始化规范,如:

static int a;

int CStu::a=13;

静态成员变量也不能在类中进行初始化,只有静态整形常量才可以在类中进行初始化,如:

public:

  static const int a = 13;

 内联函数:

 形式:在普通函数前面加上inline,如:

 

与普通函数对比,

普通函数:执行到被调用方法时,跳到被调用方法来执行;

内联函数:执行到被调用方法时,把该方法插入到调用的位置进行执行

 优缺点:内联函数占用空间大,但是执行效率比较高

 运算符的重载:

 形式如:

Source.cpp: void operator+(Number num,int x)
{
cout << (num.a+x) <<endl;
}
int main()
{
Number nnn;
nnn+13;
system("pause");
return 0;
}

 Number.h: public:
int a;
double b;

 运行结果:

对象之间不能直接使用基本运算符进行计算的,而运算符的重载则实现了直接对对象使用操作符进行运算。

 说明:该方法没有返回值,不能实现连加功能,若要实现连加功能,需要将void换成需要的返回值类型。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

GetProfileString 为win.ini初始化文件中指定的条目取得字串

 

atoi函数把字符串转换成整型数 

 

strlen():

返回字符串的长度

 

strcat():

是一个复制字符串的函数

 

了解strcat函数函数功能:

(1)函数原型:char *strcat(char *dest, const char *src);

(2)函数功能:dest 为目的字符串指针,src 为源字符串指针。strcat() 会将参数 src 字符串复制到参数 dest 所指的字符串尾部;dest 最后的结束字符 NULL 会被覆盖掉,并在连接后的字符串的尾部再增加一个 NULL。

--------------------- 本文来自 Zzzzjn 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/qq_41050954/article/details/79867523?utm_source=copy 

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Duizi and Shunzi HDU - 6188 (贪.. 下一篇StretchBlt函数和BitBlt函数的区..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目