文章 2022-05-29 来自:开发者社区

C++代码简化之道 (2):消除非必要的指针

作为C++程序员,肯定免不了和指针打交道了。一般我们使用指针都是为了避免不必要的拷贝,但有时候其实可以简化掉它。活用三目运算符先看一段例子,假设我们有一段老代码:... const string s = "1234567"; ... foo(s); // foo(const string&) bar(s); // bar(const string&) ...在...

文章 2017-05-02 来自:开发者社区

《C和C++代码精粹》——2.13 指向成员函数的指针

本节书摘来自异步社区出版社《C和C++代码精粹》一书中的第2章,第2.13节,作者: 【美】Chuck Allison,更多章节内容可以访问云栖社区“异步社区”公众号查看。 2.13 指向成员函数的指针 C和C++代码精粹如果返调函数是某个类的成员函数将会怎样?获得指向类成员的指针与获得指向非成员实体的指针的方式相似,只存在很小的语法变化。例如,考虑下面类的定义: class C { publi....

文章 2017-05-02 来自:开发者社区

《C和C++代码精粹》——2.10 指针和多维数组

本节书摘来自异步社区出版社《C和C++代码精粹》一书中的第2章,第2.10节,作者: 【美】Chuck Allison,更多章节内容可以访问云栖社区“异步社区”公众号查看。 2.10 指针和多维数组 C和C++代码精粹实际上,在C++中没有多维数组!至少对多维数组没有直接的支持。人们通常把一个一维数组看作一个向量,把一个二维数组看作一个表或者矩阵,把一个三维数组看作一个长方体。然而,数组的几何模....

文章 2017-05-02 来自:开发者社区

《C和C++代码精粹》——2.7 指针和一维数组

本节书摘来自异步社区出版社《C和C++代码精粹》一书中的第2章,第2.7节,作者: 【美】Chuck Allison,更多章节内容可以访问云栖社区“异步社区”公众号查看。 2.7 指针和一维数组 C和C++代码精粹在程序清单2.7中,会注意到在传递数组 s 时并没有使用它的地址,这是因为C和C++在大多数表达式中把数组名转换成指向它第一个元素的指针。自1984年以来,我已经向成百上千的学生讲授了....

文章 2017-05-02 来自:开发者社区

《C和C++代码精粹》——2.6 const指针

本节书摘来自异步社区出版社《C和C++代码精粹》一书中的第2章,第2.6节,作者: 【美】Chuck Allison,更多章节内容可以访问云栖社区“异步社区”公众号查看。 2.6 const指针 C和C++代码精粹注意memcpy函数第二个参数中的const关键字。这个关键字告诉编译器此函数将不会改变source指向的任何值(除了强制类型转换)。当把指针作为参数传递时,总是合适地使用const限....

文章 2017-05-02 来自:开发者社区

《C和C++代码精粹》——2.5 普通指针

本节书摘来自异步社区出版社《C和C++代码精粹》一书中的第2章,第2.5节,作者: 【美】Chuck Allison,更多章节内容可以访问云栖社区“异步社区”公众号查看。 2.5 普通指针 C和C++代码精粹通常编写能接收指向任意类型参数的函数是很方便的。这是很有必要的,例如,用标准的库函数memcpy,能够从一个地址向另一个地址拷贝一块内存。你也可能想调用memcpy来拷贝自己创建的结构: s....

文章 2017-05-02 来自:开发者社区

《C和C++代码精粹》——第 2 章 指针2.1 容易出错的编程

本节书摘来自异步社区出版社《C和C++代码精粹》一书中的第2章,第2.1节,作者: 【美】Chuck Allison,更多章节内容可以访问云栖社区“异步社区”公众号查看。 第 2 章 指针 C和C++代码精粹本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。 2.1 容易出错的编程 C和C++代码精粹“分割违规” “访问违规” “可疑的指针转换” ....

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

开发与运维

集结各类场景实战经验,助你开发运维畅行无忧

+关注
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等