我是靠谱客的博主 斯文小霸王,最近开发中收集的这篇文章主要介绍c++基础学习:结构体struct,new和delete结构体new和delete,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

结构体

1、是一个特殊的类

2、可以放函数成员,也可以用函数地址代替(将函数通过指针间接存储结构体)

3、声明变量的时候可以不用struct直接写函数名(C语言需要)

#include <iostream>
using namespace std;

struct Node
{
	int n;
	void (*p)();//将函通过指针间接存在结构体
	
};

void fun()
{
	cout << "hello lixiaoer";
}
int main()
{
	Node a = { 1, fun };    //声明变量
	a.p();

	system("pause");
	return 0;
}

new和delete

c语言中malloc和free
c++中是new和delete
初始化数组memset(起始地址,字节数,设置的值)

#include <iostream>
using namespace std;

int main()
{
	//new
	int *p = (int*)malloc(sizeof(int));
	int* p1 = new int(12);//new*type(value) 类型匹配 可以用括号赋值
	
	//*p1 = 12;  //写
	cout << *p1 << endl; //读

	delete p1; //delete指针

	//申请数组
	int* p2 = new int[5];
	memset(p, 0, 5 * 4);//menmery set  初始化数组
	int* p3 = (int*)malloc(5 * 4);
	p[0] = 12;
	p[1] = 23;
	cout << p[0] << " " << p[1] << endl;
	delete[] p; //加[]释放数组,不加也看不出错误,但标准要求如此


	system("pause");
	return 0;
}

最后

以上就是斯文小霸王为你收集整理的c++基础学习:结构体struct,new和delete结构体new和delete的全部内容,希望文章能够帮你解决c++基础学习:结构体struct,new和delete结构体new和delete所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部