C++
文章平均质量分 66
彐雨
这个作者很懒,什么都没留下…
展开
-
C++ c_str()用法
标准库的string类提供了3个成员函数来从一个string得到c类型的字符数组:c_str()、data()、copy(p,n)。上面的没有完全理解。本人是在学习ROS的过程中遇到的,好像是因为定义的时候用的std_msgs,所以需要用c_str()上述代码中,c最后指向的内容是垃圾,因为s对象被析构,其内容被处理,同时编译器将会报错。原创 2023-12-11 16:18:51 · 164 阅读 · 0 评论 -
C++ 指针常量和常量指针的区别
因为常量指针本质是指针,并且这个指针是一个指向常量的指针,指针指向的变量的值不可通过该指针修改,但是指针指向的值可以改变。因为声明了指针常量,说明指针变量不允许修改。如同次指针指向一个地址该地址不能被修改,但是该地址里的内容可以被修改。指针常量:顾名思义它就是一个常量,但是是指针修饰的。原创 2023-12-11 16:17:51 · 297 阅读 · 0 评论 -
C++ 格式化输出
目前常用%d,%s,%.2f。1.常规–格式化输出。2.特殊–格式化输出。原创 2023-12-11 14:28:42 · 3143 阅读 · 0 评论 -
C++-引用和指针区别
指针用于存放一个变量在内存中的地址,通过指针间接操作这个变量。指针变量本身也是一个变量,也有变量地址,变量名,变量值。int i = 12;int *p;//声明一个整型指针变量pp = &i;//将i的地址赋给指针变量p&为取地址符。等价于int *p;//声明一个整型指针变量pp = &i;//将i的地址赋给指针变量p指针变量p的变量值存放变量i的地址。*p指向变量i的值引用是某个变量的别名,相当于某个变量的第二个名字。对引用的操作,就相当于对变量的操作引用形式。原创 2023-12-09 16:49:46 · 101 阅读 · 0 评论 -
C++ 的vector、array和数组的比较
vector和array提供了更好的数据访问机制,即可以使用front()和back()以及at()访问(at()可以避免a[-1]访问越界的问题)方式,使得访问更加安全。vector和array提供了size和判空Empty()的获取机制,而数组只能通过遍历或者通过额外的变量过sizeof()/strlen()记录数组的size。vector和array提供了两个容器对象的内容交换,即swap()的机制,而数组对于交换只能通过遍历的方式,逐个元素交换的方式使用。原创 2023-12-07 14:52:48 · 277 阅读 · 0 评论 -
C++ - 函数重载和运算符重载
重载的运算符是带有特殊名称的函数,函数名是由关键字 operator 和其后要重载的运算符符号构成的。函数重载的关键是函数的参数列表 (函数特征标)。如果两个函数的参数数目和类型相同,同时参数的排列顺序也相同,则它们的特征标相同,而与变量名无关。函数重载 (Overload)是 C++ 语言在C语言基础上新增的功能。函数重载能够在程序中使用多个同名的函数。C++允许定义名称相同的函数,条件是它们的特征标不同。通过函数重载来设计一系列的函数,它们完成相同或者相似的功能,但使用不同的参数列表。原创 2023-12-07 11:07:52 · 129 阅读 · 0 评论