![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
ym19860303
这个作者很懒,什么都没留下…
展开
-
堆和栈的区别
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两转载 2012-04-24 17:28:47 · 610 阅读 · 0 评论 -
atan 和 atan2
1、atan(x)表示求的是x的反正切,其返回值为[-pi/2,+pi/2]之间的一个数。2、atan2(y,x)求的是y/x的反正切,其返回值为[-pi,+pi]之间的一个数。atan2返回值解释:在三角函数中,两个参数的函数atan2是正切函数的一个变种。对于任意不同时等于0的实参数x和y,atan2(y,x)所表达的意思是坐标原点为起点,指向(y,x)的射线在坐标平面上与x轴正方转载 2013-09-04 17:19:27 · 3218 阅读 · 0 评论 -
C++ ------------------------- 文件的复制
#include using namespace std;int copyFile(char* sourceFile,char* newFile){ ifstream in; ofstream out; in.open(sourceFile); if (in.fail()) { // 打开文件失败 cou转载 2013-02-04 17:34:05 · 779 阅读 · 1 评论 -
成员函数指针
一。理论篇在进行深入学习和分析之前,还是先看看书中是怎么介绍成员函数的。总结一下类成员函数指针的内容,应该包含以下几个知识点:1。成员函数指针并不是普通的函数指针。2。编译器提供了几个新的操作符来支持成员函数指针操作:1) 操作符"::*"用来声明一个类成员函数指针,例如: typedef void (Base::*PVVBASEMEMFUNC)(void);转载 2013-11-27 11:47:11 · 1133 阅读 · 0 评论 -
C++ ---------- map的使用
Map是c++的一个标准容器,她提供了很好一对一的关系,在一些程序中建立一个map可以起到事半功倍的效果,总结了一些map基本简单实用的操作!1. map最基本的构造函数; mapmapstring; mapmapint; mapmapstring; mapmapchar; mapmapchar; mapmapint转载 2013-01-30 00:18:39 · 627 阅读 · 0 评论 -
常见的三种计算fps的方法
// 1.总平均帧率void update(float dt){ static float _total_frames = 0.0f; static float _total_time = 0.0f; ++_total_frames; _total_time += dt; float fps = _total_frames/_total_time;}// 2.上一秒帧率voi转载 2013-12-16 09:02:05 · 12179 阅读 · 0 评论 -
string 常见用法
1. 转换成大小写转载 2014-05-24 16:22:49 · 824 阅读 · 0 评论 -
C++进行一行一行的读文本
ifstream inFile("/Users/user/Desktop/level.txt"); while (inFile.good()) { char buf[100]={0}; inFile.getline(buf,sizeof(buf)); cout << buf << endl; } inFil转载 2014-01-24 22:25:56 · 1485 阅读 · 0 评论 -
C++ new
“new”是C++的一个关键字,同时也是操作符。关于new的话题非常多,因为它确实比较复杂,也非常神秘,下面我将把我了解到的与new有关的内容做一个总结。new的过程当我们使用关键字new在堆上动态创建一个对象时,它实际上做了三件事:获得一块内存空间、调用构造函数、返回正确的指针。当然,如果我们创建的是简单类型的变量,那么第二步会被省略。假如我们定义了如下一个类A:clas转载 2014-10-19 22:01:34 · 542 阅读 · 0 评论 -
QT .pro相关
在QT中,有一个工具qmake可以生成一个makefile文件,它是由.pro文件生成而来的,.pro文件的写法如下:1. 注释从“#”开始,到这一行结束。2.模板变量告诉qmake为这个应用程序生成哪种makefile。下面是可供使用的选择:TEMPLATE = appA> app -建立一个应用程序的makefile。这是默认值,所以如果模板没有被指定,这个将被转载 2014-12-02 15:09:23 · 518 阅读 · 0 评论 -
xxxxxxxxxxxxxxxxxxx
void getPos(Pos* around,int row,int column,int index){ int flag; if (row % 2 == 0) { flag = 0; }else{ flag = 1; } // 先获取 row 行 int curso原创 2014-12-22 23:04:53 · 17540 阅读 · 0 评论 -
Compile, Install, Run Linux Apps on Android
Compile, Install, Run Linux Apps on AndroidTo get basic Linux apps running on Android, you need BusyBox. To give you some background, BusyBox is a software application that provides many stand转载 2015-02-04 18:06:45 · 999 阅读 · 0 评论 -
二分法计算点所在的范围
float axx[] = {10,20,30,40,50,60,70,80,90,100,110,120,130,140,150,160,170,180,190,200,210,220,230,240,250,260,270,280,290,300};int arrLen = sizeof(axx)/sizeof(axx[0]);void startSearch(int mid,int s原创 2013-09-04 15:39:26 · 1235 阅读 · 0 评论 -
Mac下 安装boost
方法一:去Macports官网的下载页面(https://distfiles.macports.org/MacPorts/)下载对用Mac系统的pkg文件,下载完成之后,双击,一路【下一步】,到安装按成。打开一个新终端:输入sudo port install boost,提示输入密码,输入你当前使用的账号的密码(注意终端中输密码不会有任何显示提示,即输入的密码不会显示),回车,Macp转载 2013-08-21 17:26:26 · 4645 阅读 · 1 评论 -
uthash
一、哈希表的概念及作用 在一般的线性表或者树中,我们所储存的值写它的存储位置的关系是随机的。因此,在查找过程中,需要一系列的与关键字的比较。算法的时间复杂度与比较的次数有关。线性表查找的时间复杂度为O(n)而平衡二叉树的查找的时间复杂度为O(log(n))。无论是采用线程表或是树进行存储,都面临面随着数据量的增大,查找速度将不同程度变慢的问题。而哈希表正好解决了这个问题。它的主要转载 2013-07-26 14:39:44 · 6268 阅读 · 1 评论 -
C++学习
//---调试技巧#define P(A) cout1.将 char* 转换成 int类型: atoi(char*); 位于: stdlib.h 下面 2.将char* 和int 类型相连: char s[20] = {0}; int i =20; sprintf(s,"hello : %d",i); ==> s =原创 2012-12-12 21:31:42 · 554 阅读 · 0 评论 -
C/C++ 宏
一、#define的基本用法 #define是C语言中提供的宏定义命令,其主要目的是为程序员在编程时提供一定的方便,并能在一定程度上提高程序的运行效率,但学生在学习时往往不能 理解该命令的本质,总是在此处产生一些困惑,在编程时误用该命令,使得程序的运行与预期的目的不一致,或者在读别人写的程序时,把运行结果理解错误,这对 C语言的学习很不利。1 #define命令剖析1转载 2013-01-28 18:29:04 · 750 阅读 · 0 评论 -
C++ ------------------- string类介绍
这几天看了Bruce所著《Thinking in C++》一书中有关string类的介绍,结合之前收集到的一些相关资料,这里做个系统的总结,希望能和大家在C++的大路上共同前行。在C语言中,字符串基本就是字符型数组,并且总是以二进制零(即空结束付)作为其最末元素。C++ string类与它们在C语言中的前身截然不同,C++ string类具有很多优点:1>. 隐藏了字符串序列内部字符序转载 2013-01-30 11:04:12 · 767 阅读 · 0 评论 -
C++ 类对象和 指针的区别
指针的情况class Test{public: int a; Test(){ a = 1; }};int main(){ Test* t1 = new Test(); t1->a = 10; Test* t2 = new Test(); t2->a = 5; cout a <<原创 2013-01-30 21:50:40 · 9217 阅读 · 1 评论 -
C++下面 计算时间
在java里面,有非常方便的System.currentTimeMillis();方法在C++里面,利用下面的clock_t start = clock();double timecost = 1000*((double)clock()-start)/(CLOCKS_PER_SEC);其中timecost就是毫秒了转载 2013-02-03 22:40:08 · 701 阅读 · 0 评论 -
c++ 拷贝构造函数 讲解
拷贝构造函数,是一种特殊的构造函数,它由编译器调用来完成一些基于同一类的其他对象的构建及初始化。其唯一的参数(对象的引用)是不可变的(const类型)。此函数经常用在函数调用时用户定义类型的值传递及返回。拷贝构造函数要调用基类的拷贝构造函数和成员函数。如果可以的话,它将用常量方式调用,另外,也可以用非常量方式调用。目录拷贝构造函数说明一、拷贝函数二、值的重载三、注意事宜四、拷贝构造转载 2013-01-19 12:13:52 · 1842 阅读 · 0 评论 -
Sqlite3 ---------------用法
前序:Sqlite3 的确很好用。小巧、速度快。但是因为非微软的产品,帮助文档总觉得不够。这些天再次研究它,又有一些收获,这里把我对 sqlite3的研究列出来,以备忘记。这里要注明,我是一个跨平台专注者,并不喜欢只用 windows平台。我以前的工作就是为 unix平台写代码。下面我所写的东西,虽然没有验证,但是我已尽量不使用任何 windows的东西,只使用标准 C转载 2013-01-22 18:59:55 · 3121 阅读 · 0 评论 -
C++ ---------------- 成员函数指针揭秘
1 前言2 语法3 与其它语言机制的混合使用3.1 继承3.2 虚函数3.2 多继承4 实现4.1 Microsoft的实现4.1.1 内部表示4.1.2 Vcall_addr实现4.1.3 This指针调整4.1.4 结论4.2 GCC的实现4.2.1 内部表示4.2.2 实现机制5 语言限制与陷阱5.1 例子5.2 stati转载 2013-02-18 10:32:52 · 4187 阅读 · 1 评论 -
C++对象池
//// SimpleObjectPool.h// ObjectPool//// Created by user on 13-5-20.// Copyright (c) 2013年 user. All rights reserved.//#ifndef __ObjectPool__SimpleObjectPool__#define __ObjectPool__Simple转载 2013-05-21 11:36:52 · 2495 阅读 · 0 评论 -
C++ 标准输入 cin 使用
cin 总结: // 1. cin >> xxx 并且 cin会忽略 空格 回车 tab 这些//// a.需要看xxx是什么数据类型,如果是int 当输入字符时,相当于0// int a;// cin >> a; //输入 'a'// printf("%d",a); /原创 2013-07-12 01:44:26 · 5843 阅读 · 0 评论 -
vector删除
vector vec; for (int i = 0; i <= 20; ++i) { vec.push_back(i); } vector::iterator it = vec.begin(); while (it!=vec.end()) { int temp = (*it); if (转载 2013-07-25 10:29:17 · 1019 阅读 · 0 评论 -
C++ 追踪内存分配
#include #include using namespace std;class Object{public: Object(const string& name): _name(name){ cout << "Object Constructor" << endl; } void print(){ cou转载 2015-08-03 16:31:55 · 1786 阅读 · 0 评论