首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C+编程中常见问题与解决途径

计算机技术的发展,推动了编程领域的发展,C++ 编程作为编程中应用最广泛、最便捷、最简明的一种编程语言, 通过它的应用能够不断提升编程质量。鉴于此,本文对变量命名、动态内存、概念混淆这三种 C++ 编程中常见问题与解决途径进行集中的解决与分析。旨在为了不断提升现今 C++ 编程程序的质量献力。

1 变量命名不当

问题表现 :C++ 编程语言对于命名问题十分重视,尤其还对变量的命名,必须明确,其目的就是为了避免出现由于命名混乱导致的程序错误,影响程序的可读性。关于变量命名问题,一般是出现在初学者在程序的编写过程中容易出现的问题。

解决对策 :为了进一步解决新手在操作中出现这样的问题,通过匈牙利表法能够直接有效的通过用一个或者多个小写字母对变量名进行命名,夹着在字母后面著名变量的意义, 就能够按照随附的字母进行排序,也能够自符合 C++ 编程的变量要求。例如,以编程中三个变量为例,这三个变量分别是 iValue1、iValue2、fResult,通过观察命名就能知道命名所代表的变量意思。

首字母 i 就表示整个变量数据属于整型变量数据,f 就表示整个变量数据属于浮点型变量数据。所以能够强袭准确的对这些变量数据进行辨别和确认。如果采用一般的命名法, 我们能够区分 iValue1、iValue2 是具有相同属性的两个变量, 但是就很难理解fResult 的类型关系。所以说利用匈牙利表示法,能够有效的帮助新手在应用不熟练的情况下找到数据并进行下一步工作。

2 动态内存问题

问题表现 :动态内存分配的问题,一直是 C++ 编程中经常出现的问题,在分析动态内存问题的表现形式以及解决方法之前,先要对动态内存分配的内涵有一定的了解。动态内存分配就是指程序执行的过程中动态的分配或者回收储存空间,进行再分配。在编程中,经常会出现程序编写人员为了节省空间内存,使用动态内存来储存空间,最终由于操作不当,导致的动态分配的问题。这时,null 指针会进行接引操作, 对分配的内存进行越过边界的处理,释放非动态分配的内存、在什邡过程中经常是释放了一部分但随即就又被继续使用。在传递的过程中,要求传递给 free 的指针必须从 malloc- calloc-realloc 函数再返还给指针。但是通过释放非港台内存, 容易引起程序的终止或延迟终止。

解决对策 :

使用 :

小编给大家推荐一个学习氛围超好的地方,C/C++交流企鹅裙:【三四一,六三六,七二七】适合在校大学生,小白,想转行,想通过这个找工作的加入。裙里有大量学习资料,有大神解答交流问题,每晚都有免费的直播课程

3 概念混淆使用问题

问题表现 :概念的混淆主要体现在对局部变量、全局变量、存储类别的概念混淆。这三种概念都是 C++ 编程中经常出现的问题,对于初学者而言很难区分三者之间的关系。局部变量就是指在函数内部的定义,并旨在函数中能够有效, 在应用中要注重,在 main 中定义的局部变量也只是在主函数有效,由于不同的函数不同,可以通过使用同名的局部变量, 只要局部变量只针对函数作用,就能够互不干扰。全局变量, 也就外部变量,顾名思义,就是与局部变量的内涵完全相反, 知识能够应用在函数外部的变量。通过对整个程序的考虑, 由于外部变量空间占用内存较大,也要注重对其的应用,避免出新降低程序清晰度的问题。变量存储类别,在整个程序中主要有三个存储部分,分别是 :程序区、动态存储区、静态存储区。

由于数据种类的不同,也要放在不同的存储去进行存储。其中变量存储的只要是在动态存储区和静态存储区之中。由于命名不同,例如,auto、extern、static 等。所以针对不同的命名就要选择不同的存储空间。

解决对策 :为了进一步解决概念混淆使用问题,主要就是掌握局部变量、全局变量、存储类别的概念,进一步在进行存储是,主张对变量性质的权衡。对于静态局部变量,在函数调试之后,不释放其占用的单元,在进行下一次函数的使用时,仍然可以对上次的数据进行再次使用数据,在静态局部变量中通过函数的调试,这是其他函数不能够比拟的。静态全局变量,通过上文对全局变量含义的分析,静态全局变量只能够应用在本函数中。register 是能够把作为一般变量进行储存,在程序运行中需要时,由控制器该变量输送在

CPU 运算器中,通过 CPU 的运算,再进行存储。现在技术已经能够将变量进行自行的发送,不需要指定即可。

4 结论

在这个过程中,C++ 编程中常见问题与解决途径需要以变量命名、动态内存、概念混淆使用为依据,注意在进行编程中对常见问题综合思考,是提高解决能力、促进 C++ 编程程序完善上升空间的有效举措。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180518A0AB2T00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券