学习数据结构中遇到的C++知识点

本文详细讲解了C++中指针的使用、参数传递、结构体typedef与定义、不同格式、vector的赋值以及缺失的幂运算符。深入理解了指针与.操作的区别,typedefstruct的作用,以及结构体定义的三种常见方式。
摘要由CSDN通过智能技术生成

1. C++中的一些符号用法

你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

1.1 使用指针,还是参数?

传递一个参数给函数的时候,这个参数会不会在函数内被改动决定了使用什么参数类型。
a. 如果需要被改动,则需要传递指向这个参数的指针;
b. 如果不用改动,可以直接传递这个参数。

int* p;
getlength(p); //获取长度,不需要改动
insert(*p,2);//插值,需要改动

1.2 -> 与 . 的区别

a. A.B则A为对象或者结构体;
b. A->B则A为指针,->是成员提取,A->B是提取A中的成员B,A只能是指向类、结构、联合的指针;

1.3 typedef struct和struct的区别

1.typedef struct 结构体变量名{成员表列}结构体变量名;
2.struct 结构体变量名{成员表列}结构体变量名;
3.typedef struct {成员表列}a1,a2,a3;相当于typedef a1 a2;typedef a1 a3;

1和2的区别在于申请变量时,1需要写 struct node n;而2则需要直接写node n;
3则表示结构体变量名都是结构体类型,声明变量时用任何一个都可以。

1.4 结构体定义的三种格式

(1)先声明结构体类型再定义变量名

struct Student
{
	成员列表;
}
Student student1,student2;

(2)声明结构体的同时定义变量

struct Student
{
	成员列表;
}student1,student2;

(3)直接定义结构体类型变量

struct
{
	成员列表;
}student1,student2;

1.5 vector的赋值

C++11可以直接对vector赋值

vector<int> vec={1,2,3};

1.6 C++ 没有幂的运算符!

C++ 不能使用 2^10这种表达;要用 cmath::pow(2,10)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值