c++ - tips

c++ tips 1、map erase的方法 https://blog.youkuaiyun.com/educast/article/details/17024195 STL的map表里有一个erase方法用来从一个map中删除掉指令的节点 eg: map<string,string> mapTest; typedef map<string,string>::iterator ITER; ITER iter=mapTest.find(key); mapTest.erase(iter); 像上面这样只是删 阅读详情
  • const总是修饰其右边最近元素
const char *const p = "abc";//第一个const修饰char,第二个修饰p
  • 非const底层数据类型不能赋值给const底层数据,例如,
const char *pa;
char *pb;
pb = pa;//错误,底层数据不对应,可以用const_cast<char*>(pa)

容易理解错误的地方:
typedef char *pstring;
const pstring cstr = 0; //cstr是指向char的常量指针
const pstring *ps; //ps是一个指针,它的对象是指向char的常量指针
如果尝试着把类型别名替换成本来的名字后就错了
const char *cstr = 0;//是对const pstring cstr的错误理解

  • typedef用法
/*去掉typedef后就是声明一个数组,名字是list
用上typedef后list就成了类型*/
typedef int list[6]; 
list l;

等价于

using list = int [6]; //c++11语法
list l;
  • 数值成员初始化形式的构造函数和赋值形式的构造函数比较

运行效率

构造函数初始值是用形如 X(int ia, int ib) : a(ia), b(ib){}这样的语法对类的数据成员赋初始值。 参数初始化的顺序是从右边参数到左边参数。

赋值形式的构造函数形如 X(int ia, int ib) {a = ia; b = ib;} 先初始化再赋值,效率低。

构造函数的初始值有时必不可少
例如数据成员有引用或const常量时必须用初始值形式的构造函数

函数指针_extern_typedef_const_static的基本用法 收集了函数指针_extern_typedef_const_static的基本用法。 拿出来供大家共享 立即下载

相关推荐

#define,const,typedef三者联系与区别

文章简单介绍了#define,const,typedef三者联系与区别

关于typedef的用法(未读)(此文极好)

 转贴 关于typedef的用法2007-04-04 17:20 关于typedef的用法 一.基本概念剖析 int* (*a[5])(int, char*);  

thimin的专栏 1675

【AI之路】cmd命令行通过Huggingface镜像站快速下载模型文件的方法

Hugging Face Hub 是分享机器学习模型、演示、数据集和指标的首选之地。huggingface_hub 库可以轻松下载Huggingface上有用的模型和数据集元数据。但大模型文件通常较大,国内下载太慢,那有没有高效便捷的方法?这个当然必须有!看到了吗?只是添加一个参数,下载大模型就搞定了。当然也可以使用python程序来下载。具体见前期博文:【AI之路】使用huggingface_hub通过huggingface镜像站hf-mirror.com下载大模型(附代码,实现大模型自由)

IT里的交易员-博客 1850

C语言const:禁止修改变量的值

有时候我们希望定义这样一种变量,它的值不能被改变,在整个作用域中都保持固定。例如,用一个变量来表示班级的最大人数,或者表示缓冲区的大小。为了满足这一要求,可以使用const关键字对变量加以限定: const int MaxNum = 100; //班级的最大人数 这样 MaxNum 的值就不能被修改了,任何对 MaxNum 赋值的行为都将引发错误: MaxNum =

aeoluspu的专栏 1351

加法器设计—— 原理图与VHDL设计初步

1、在DE2-115开发板上,完成4位全加器系统的设计、下载和功能演示,并在FPGA上实现1位全加器;2、完成3-8译码器的设计、下载和功能演示(利用板上的8段数码管)本次实验在组合逻辑电路的基础上,运用Verilog编程实现了四位全加器和3-8译码器的设计,同时实现了在DE2-115开发板上的下载和功能演示。整个过程加深了我对电路设计和Verilog编程的理解,同时也锻炼了解决问题的能力。

m0_74749526的博客 1236

Hi3559AV100制作ext4文件系统和烧录emmc

1、首先生成所需文件系统,见本博客&lt;Hi3559AV100文件系统制作cramfs&gt;。 2、使用工具生成EXT4文件系统 ./make_ext4fs -s -l 96M rootfs_hi3559av100.ext4 ./rootfs 3、烧录文件系统 mw.b 0x82000000 ff 0x12C00000;tftp 0x82000000 STM_...

阿Sir问道 7033

Typedef、 Const、#define三者的区别和联系

修饰的是这个指针指向的内容不允许修改,这个指针的地址可以改变。错误:在c语言中n并不是真正意义上的常量,它还是变量 ,对于数组来说必须要开辟一个准确的数组大小,C++中是可以编译过去。修饰的指针,表示这个指针的地址不可以修改,地址的内容可以修改。//这样也是错误的,数组必须是确定的。是一样的都是修饰变量a为常量。//a是int * a, b是 int* b。//a是int * a, b是 int b。补充:int *p,q表示p是指针变量,q是int变量。

controlourself的博客 535

从零到一:基于DESeq2的转录组差异表达分析实战指南

本文详细介绍了基于DESeq2的转录组差异表达分析实战指南,涵盖数据准备、标准化处理、差异分析及结果解读等关键步骤。DESeq2凭借其稳定性和对低表达基因的友好处理,成为转录组数据分析的首选工具。文章还提供了常见问题排查和优化建议,帮助研究者高效完成从分析到发表的完整流程。

weixin_26759093的博客 270

typedef和define具体的详细区别

转自http://blog.youkuaiyun.com/21aspnet/article/details/6723915 1) #define是预处理指令,在编译预处理时进行简单的替换,不作正确性检查,不关含义是否正确照样带入,只有在编译已被展开的源程序时才会发现可能的错误并报错。例如: #define PI 3.1415926 程序中的:area=PI*r*r 会替换为3.1415926*r

wolenski的专栏 755

Hyper-V创建Ubuntu虚拟机设置固定IP

本文记录使用hyper-v创建ubuntu虚拟机,为虚拟设置固定IP且通过物理机可访问。

2622

ComfyUI 的 LoRA 训练:素材打标签与调优全攻略

标签是 LoRA 训练的"地基"——地基打不牢,后续调参再精细也难出好效果。记住:标签要"少而精",聚焦独特点,用触发词控效果。下一篇我们将讲解参数设置,让你的优质标签发挥最大价值~

2301_78150483的博客 3098

C语言中typedef和const的区别

类型定义的书写格式为typedef 类型 被定义的类型名被定义类型名通常用大写字母构成。从语法形式上看,typedef出现在“类型”的左边,类似于 extern、static 等存储类区分符在说明中所占的位置,实际上typedef不保留存储空间,只是为了语法上方便,才称它为“存储类区分符”。显然,MILES与int同义,而SP与指向int型的指针同义,STRING与字符指针同义,PF与指向函数(返回int型)的指针同义。

如若 304

从零搭建实时数仓:基于Flink+ClickHouse的实践

实时数据处理和实时数据查询。市场上的技术方案众多,为何选择Flink+ClickHouse?

AIGC应用创新大全的博客 1320

[收藏]C++ Tips(12)--||和&&的语句执行顺序

/*这一系列文章《C++ Tips》是公司Code Committee专家会推荐工程师看的,感觉很好,拿出来与大家共同提高。并不是知道多少会使人与人产生差别,真正的差别在于你能做到多少。--coofucoo*/ ||和&&的语句执行顺序条件语句中的这两个“与”和“或”操作符一定要小心,它们的表现可能和你想像的不一样,这里条件语句中的有些行为需要和说一下:   express1 ││ express

心如止水--coofucoo的专栏 9286

SAP 采购申请、采购订单的审批策略

采购申请、采购订单的审批策略 采购申请审批 PR审批可以分为:含分类、无分类 1、无分类PR审批: A、后台配置: 设置批准代码(批准代码可以设置多级审批): 发布批准标识使用系统已有的 “2 询价/采购订单”: 新建采购申请审批策略Z1(仅设置1级审批,一共可以设置8级审......

willieyuan的博客 2万+

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

[收藏]C++ Tips(9)--函数参数中的const

/*这一系列文章《C++ Tips》是公司Code Committee专家会推荐工程师看的,感觉很好,拿出来与大家共同提高。并不是知道多少会使人与人产生差别,真正的差别在于你能做到多少。--coofucoo*/  函数参数中的const对于一些函数中的指针参数,如果在函数中只读,请将其用const修饰,这样,别人一读到你的函数接口时,就会知道你的意图是这个参数是[in],如果没有const时,参数

心如止水--coofucoo的专栏 2433

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

[收藏]C++ Tips(10)--宏的使用

[收藏]C++ Tips(10)--宏的使用document.title="[收藏]C++ Tips(10)--宏的使用 - "+document.title /*这一系列文章《C++ Tips》是公司Code Committee专家会推荐工程师看的,感觉很好,拿出来与大家共同提高。并不是知道多少会使人与人产生差别,真正的差别在于你能做到多少。--coofucoo*/ 宏的使用很多程序员不

33的专栏 634

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

[收藏]C++ Tips(13)--Debug版和Release版的程序

 /*这一系列文章《C++ Tips》是公司Code Committee专家会推荐工程师看的,感觉很好,拿出来与大家共同提高。并不是知道多少会使人与人产生差别,真正的差别在于你能做到多少。--coofucoo*/ Debug版和Release版的程序程序在开发过程中必然有许多程序员加的调试信息。我曾经参与过这样的事:当程序开发结束时,群众被发动起来删除程序中的调试信息,何必呢?为什么不像VC++那

心如止水--coofucoo的专栏 2314

[收藏]C++ Tips(6)--if的处理

[收藏]C++ Tips(6)--if的处理document.title="[收藏]C++ Tips(6)--if的处理 - "+document.title /*这一系列文章《C++ Tips》是公司Code Committee专家会推荐工程师看的,感觉很好,拿出来与大家共同提高。并不是知道多少会使人与人产生差别,真正的差别在于你能做到多少。--coofucoo*/  if 语句对出错的

33的专栏 717

C++ Tips of the Week (本周 C++ 技巧)

C++ Tips of the Week (本周 C++ 技巧)

程永强 532

C++ Tips

<bits/stdc++.h> 这个头文件是c++的一个算是比较特殊的头文件,不是所有oj都支持,在pc上一般好像可以用。这个头文件包含很多头文件,当你忘记某个函数在哪个头文件的时候写上这一个头文件就大概率可以运行了。 这个是源码,就是不知道C++的运行机制一下include这么多头文件会不会占内存。。。 // C++ includes used for precompili...

qq_31267769的博客 610
上一篇: 查找 - 二分查找
下一篇: c语言专题
codingnote
博客等级 码龄12年 3粉丝 16原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值