
C/C++
Y忍冬草
A.P.E 实践出真知....
展开
-
C语言之程序编程规范
一、排版1. 程序块采用缩进的风格编写,注意TAB键的缩进空格数,不同IDE下,注意设置TAB键的空格数,我们采用缩进的空格数为4个。2. 相对独立的程序块、变量说明之后加空行,以示区分相对独立性。3. 较长的语句(超过80字符)要分行书写,长表达式要在低优先级操作符处换行,操作符位于新行之首,并进行适当的缩进,总之原则使得排版整齐,逻辑关系清晰,增强代码的可读性。循环语句、判断语原创 2016-04-26 09:24:07 · 1198 阅读 · 0 评论 -
C/C++ 计算时间差的五种方法 / Qt 计算时间差的两种方法
//———————————————【转自:司马懿字仲达】—————————————–// Qt计算时间的两种方法:QTime elapsed() : ms QTime currentTime() : msC++计算时间的五种方法:clock() : ms GetTickCount() : msgettimeofday(time_val*, NULL) : usQueryPerfo转载 2017-12-29 11:04:58 · 1619 阅读 · 0 评论 -
C++之数据类型
字符串string 1.字符串常用操作函数// 字符串拷贝string strcpy(string, const string);// 字符串是否相等int strcmp(const string, const string);// 字符串是否为空string str;if (!str.size()) // ok:空或if (str.empty()) //...原创 2018-02-28 13:30:22 · 249 阅读 · 0 评论 -
不具名的命名空间(unnamed namespaces)
//————————-【转自:宇宙379】—————————–// 众所周知,命名空间是用来防止对象的重复定义的。 如下,编译不会出错:namespace n1{ int x;}namespace n2{ int x;}//访问n1.x;n2.x;上面是具名的名字空间,不具名的名字空间也是防止对象重复定义用,只是他没有名字而已。file1...转载 2018-02-24 10:03:45 · 761 阅读 · 0 评论 -
const用法
【转自:旭东的博客】 C++ const 允许指定一个语义约束,编译器会强制实施这个约束,允许程序员告诉编译器某个值是不能更改的。 在编程时,如果变量的值不发生改变,则应该声明为const,防止变量值被不小心更改!const 修饰成员变量#include<iostream>using namespace std;int main(){ int a1=3; ...转载 2018-11-07 23:31:21 · 216 阅读 · 0 评论 -
C++ find()函数使用
【转自:balingybj】感谢网友之分享头文件#include &amp;lt;algorithm&amp;gt;函数实现template&amp;lt;class InputIterator, class T&amp;gt;InputIterator find (InputIterator first, InputIterator last, const T&amp;amp;val转载 2018-11-08 14:12:40 · 1819 阅读 · 0 评论 -
【Y忍冬草】枚举作为返回类型
在阅读某项目源码的时候,突然发现项目中函数的返回类型竟然是枚举类型!!!这是什么鬼,表示一脸懵逼!!!! 长知识,表示枚举真是个好东西。 项目中涉及到软件初始化状态、图像是否存在、检测是否成功等事项,如果按照传统方法,则需要定义很多变量,但这些状态不是同时存在的,这也就是为什么这个地方可以使用枚举类型的原因。例:// 表示返回状态typedef enum { RC_NO_INIT...原创 2018-11-19 18:47:43 · 9260 阅读 · 7 评论 -
C/C++结构体语法总结
【转自:https://blog.youkuaiyun.com/dawn_after_dark/article/details/73555562】1.结构体简介 结构体属于聚合数据类型的一类,它将不同的数据类型整合在一起构成一个新的类型,相当于数据库中一条记录,比如学生结构体,整合了学号,姓名等等信息。结构体的好处就是可以对这些信息进行整体管理操作,类似面向对象中类的属性,有了结构体,我就可以更好抽象描述...转载 2018-12-11 12:21:51 · 240 阅读 · 0 评论 -
C++全局变量的声明和定义
//———————————-【转自:DageKing】——————————// (1)编译单元(模块) 在VC或VS上编写完代码,点击编译按钮准备生成exe文件时,编译器做了两步工作: 第一步,将每个.cpp(.c)和相应的.h文件编译成obj文件; 第二步,将工程中所有的obj文件进行LINK,生成最终.exe文件。 那么,错误可能在两个地方产生: 一个,编译时的错误,转载 2017-12-08 09:59:48 · 506 阅读 · 0 评论 -
Visual C++内存泄露检测工具(VLD)
//—————————–【转自:http://www.voidcn.com/article/p-takxmqck-bgn.html】————————-//简述C/C++ 程序越复杂,内存的管理显得越重要,稍有不慎就会出现泄漏。如果内存泄漏不是很严重,在短时间内对程序不会有太大影响,这也使得内存泄漏问题有很强的隐蔽性,不易被发现。然而不管内存泄漏多么轻微,当程序长时间运行时,其破坏力是惊人的 - 从性转载 2017-12-22 14:33:53 · 301 阅读 · 0 评论 -
C++ 模板详解(一)
//———————————【转自:觅思.澈】——————————//C++模板 模板是C++支持参数化多态的工具,使用模板可以使用户为类或者函数声明一种一般模式,使得类中的某些数据成员或者成员函数的参数、返回值取得任意类型。 模板是一种对类型进行参数化的工具; 通常有两种形式:函数模板和类模板; 函数模板针对仅参数类型不同的函数; 类模板针对仅数据成员和成员函数类型不同的类。 使用模板的转载 2017-11-03 11:45:54 · 294 阅读 · 0 评论 -
C语言的学习
所谓类型,就是对数据分配存储单元的安排,包括存储单元的长度(占多少字节)以及数据的存储形式。不同的类型分配不同的长度和存储形式。C语言允许使用的类型如下图,图中有*的是C99所增加的。整型(int):在存储单元中的存储方式:用整数的补码(complement)形式存放。一个正数的补码是此数的二进制形式,如5的二进制形式是101,如果用两个字节存放一个整数,则在存储单元中数据形式原创 2016-04-28 21:19:46 · 496 阅读 · 0 评论 -
C++容器array
【转自】:http://www.cnblogs.com/DswCnblog/p/5671799.html array是一个固定大小的顺序容器,不能动态改变大小,array内的元素在内存中以严格的线性顺序存储,与普通数组声明存储空间大小[]的方式是一样有效的,只是加入了一些成员函数和全局函数[get (array)、operators (array)],以便当作标准容器使用零大小的array是有效的转载 2017-09-13 16:25:14 · 769 阅读 · 0 评论 -
C++之函数模板
其实关于函数模板自己已经看了很多次了,只是实在太菜,用的很少以至于总是给忘了,现在简单记下来。 函数模板是通用的函数描述,其通过将类型作为参数传递给模板,可使编译器生成该类型的函数。 一个简单的函数模板例程:#include <iostream>using namespace std;template <typename T>void Swap(T &a, T &b);int main(){原创 2017-09-15 15:58:09 · 248 阅读 · 0 评论 -
C++虚函数
转自:http://www.cnblogs.com/longlybits/articles/2386175.html1.简介虚函数是C++中用于实现多态(polymorphism)的机制。核心理念就是通过基类访问派生类定义的函数。假设我们有下面的类层次:class A { public: virtual void foo() { cout << “A::foo() is called转载 2017-09-08 09:45:03 · 350 阅读 · 0 评论 -
C++输出数据到TXT文档中
代码测试过程中总需要将一些数据输出到文档中进行查看。唉……脑子是个好东西,可惜记不住:包含头文件:#include <iostream>#include <fstream>using namespace std;主函数:int main(){ int a = 10; float b = 10.0; ofstream dataFile; dataFile.原创 2017-08-31 16:34:52 · 22857 阅读 · 0 评论 -
c++中vector向量几种情况的总结(向量指针,指针的向量)
1.标准库vector类型vector 是同一种类型的对象的集合,每个对象都有一个对应的整数索引值。标准库将负责管理与存储元素相关的内存。我们把 vector 称为容器,是因为它可以包含其他对象。一个容器中的所有对象都必须是同一种类型的。 用 vector之前,必须包含相应的头文件。#include <vector>using std::vector; vector 是一个类模板(class t转载 2017-09-27 14:06:11 · 12247 阅读 · 0 评论 -
动态库与静态库优缺点比较
我们在编写一个C语言程序的时候,经常会遇到好多重复或常用的部分,如果每次都重新编写固然是可以的,不过那样会大大降低工作效率,并且影响代码的可读性,更不利于后期的代码维护。我们可以把他们制作成相应的功能函数,使用时直接调用就会很方便,还可以进行后期的功能升级。 例如我要在一段代码中多次交换两个变量的值,我可以在代码中多次写入 i=x; x=y; y=i; 不过这样未免有点麻烦我们转载 2017-10-13 08:47:44 · 356 阅读 · 0 评论 -
C++中的命名空间、using用法、区域运算符(::)详解
//————————————【转自:fl2011sx】——————————–// 大家好!逗比老师又来给大家逗比啦!今天我们来逗比的内容,是C++中特别特别特别**疼的内容,这部分内容尤其对于C程序员、OC程序员来说尤为费解。那么废话不多说,我们先来进入第一个内容——命名空间。 先问你个问题哈,你是不是在写C++代码的时候,脊髓反射式的写一个using namespce std; 但其实你并不了转载 2017-11-03 11:07:24 · 518 阅读 · 0 评论 -
【C++】Struct的定义
最近在项目中用到结构体Struct,发现自己写的结构体中如果用到第三方库中的时候,进行拷贝的时候就会出现Bug,百思不得其解啊!在查看项目中老大写的Code,发现自己写的Struct与老大写的Struct有很大区别。 在向老大请教后,才知道:1)在定义Struct时,如果Struct中用到第三方库定义的变量或自己定义的变量,若要用到拷贝、赋值等操作(C++11的特性),则需要重写其构造函数、...原创 2019-03-27 20:12:59 · 875 阅读 · 0 评论