随笔 - 156  文章 - 0  评论 - 35  阅读 - 72万 

随笔分类 -  C/C++

STL容器删除元素的陷阱
摘要:今天看Scott Meyers大师的stl的用法,看到了我前段时间犯的一个错误,发现我写的代码和他提到错误代码几乎一模一样,有关stl容器删除元素的问题,错误的代码如下:std::vector mFriendList;...std::vector::iterator iter = mFriendLi... 阅读全文
posted @ 2014-10-17 12:04 Yogurshine 阅读(4985) 评论(0) 推荐(0) 编辑
奇偶校验算法
摘要:1即计算出所给数中包含1的个数方法一:每一位分别异或(时间复杂度O(n)n代表数位数)函数功能:如果1的个数为奇数个,则返回1,如果1的个数为偶数个,则返回0。parity_check(unsigned x){int val=0;while(x){val^=x;//val 和x进行异或运算x>>=1... 阅读全文
posted @ 2014-09-01 17:56 Yogurshine 阅读(26627) 评论(0) 推荐(0) 编辑
整型数补码原码
摘要:#define MAX 32 void IntToBinary(char binary[], int x); // x转换为二进制 void IntToBinary2(char binary[], int x); // 不同的思路可以有多种方法 void TrueForm(char binary[... 阅读全文
posted @ 2014-08-27 10:38 Yogurshine 阅读(559) 评论(0) 推荐(0) 编辑
模板
摘要:templateT add(const T&a, const T &b){ return a+b;}void func(int(*ptrfun)(const int& a, const int& b)) //后面两个参数的声明必须写{ cout); }#include templa... 阅读全文
posted @ 2014-08-18 13:10 Yogurshine 阅读(323) 评论(0) 推荐(0) 编辑
操作符.*
摘要:1 操作符.*即成员指针运算符 (该运算符不支持重载)之前讲过函数指针,你不可以像一个普通的函数指针那样指向一个成员函数,正确的做法应该是,你必须使用一个成员函数指针。一个成员函数的指针指向类中的一个成员函数,定义:(typedef) 返回值类型 (类名::*函数指针名)(参数列表);C++成员函数... 阅读全文
posted @ 2014-08-15 15:05 Yogurshine 阅读(1967) 评论(0) 推荐(0) 编辑
const ,static,inline
摘要:const: 1 定义变量 ,如下写法都可以: TYPE const ValueName = value; const TYPE ValueName = value; 2 当作为全局变量并且在他文件也想使用时:(默认const具有局部性) 1.CPP :extern const TYPE Valu... 阅读全文
posted @ 2014-08-15 11:25 Yogurshine 阅读(567) 评论(0) 推荐(0) 编辑
构造函数初始化与赋值
摘要:1 C++规定,对象的成员变量的初始化动作发生在进入构造函数函数体之前(即花括号之前)。构造函数内的都不是初始化而是被赋值。进入函数体之前编译器会自动调用这些成员变量的默认构造函数(即无参构造函数)来初始化,但是不保证内置对象初始化。因此函数体中赋值这种做法导致默认构造函数初始化白费了,效率低。所以... 阅读全文
posted @ 2014-08-15 09:53 Yogurshine 阅读(2800) 评论(0) 推荐(0) 编辑
C代码中如何调用C++ C++中如何调用C
摘要:注意这里的C调用C++或者C++调用C意思是.c文件中调用.cpp文件中代码,或者相反。集成开发环境如VC++6.0或者vs都是以文件后缀来区别当前要编译的是C代码还是C++代码,然后采用响应的编译、调用协议等。使用extern "C" 主要是因为C编译器编译函数时不带参数的类型信息,只包含函数的符... 阅读全文
posted @ 2014-08-14 17:28 Yogurshine 阅读(57848) 评论(2) 推荐(0) 编辑
C用函数指针模拟重载 C++重载
摘要:C中为什么不支持重载,即同一作用域内不允许出现同名函数?我们都知道重载是c++面向对象的特性。c语言中是不存在的。所谓重载简单来说就是一个函数名可以实现不同的功能,要么输入参数不同或者参数个数不同,要么返回类型不同。例如函数add(),在c++中可以轻易实现int,double等不同类型参数的相加功... 阅读全文
posted @ 2014-08-14 10:35 Yogurshine 阅读(2936) 评论(0) 推荐(0) 编辑
scanf printf gets() puts(),cin cout
摘要:最近在练机试题,常用的C和C++输入输出如下:1 scanf 和printfint a; scanf("%d",&a) ; printf("%d",a); printf("\n");double b;scanf("%");char c; scanf("%c",&c);printf("%c",c);l... 阅读全文
posted @ 2014-07-07 21:11 Yogurshine 阅读(615) 评论(0) 推荐(0) 编辑
求组合数 C++程序
摘要:一 递归求组合数设函数为void comb(int m,int k)为找出从自然数1、2、... 、m中任取k个数的所有组合。分析:当组合的第一个数字选定时,其后的数字是从余下的m-1个数中取k-1数的组合。这就将求m个数中取k个数的组合问题转化成求m-1个数中取k-1个数的组合问题。设函数引入工作... 阅读全文
posted @ 2014-07-07 13:10 Yogurshine 阅读(18849) 评论(0) 推荐(0) 编辑
m个苹果放入n个篮子
摘要:题目 :X个相同的苹果放入Y个篮子,(1)篮子可以为空 ,篮子不同。 放法有C(X+Y-1,Y-1 );//(2)篮子不可以为空,篮子不同.放法有C(X-1,Y-1)//插挡板法分析有了这个组合公式,参考我的 求组合数 程序即可解决问题。(3)篮子可以为空,篮子相同。按上面程序求解 递推公式dp[i... 阅读全文
posted @ 2014-07-07 13:04 Yogurshine 阅读(9858) 评论(0) 推荐(0) 编辑
C++ sort函数用法 C中的qsort
摘要:需要包含#include MSDN中的定义:template void sort(RanIt first, RanIt last); //--> 1) template void sort(RanIt first, RanIt last, Pred pr); //--> 2)1.默认的sort函... 阅读全文
posted @ 2014-07-06 14:21 Yogurshine 阅读(5483) 评论(0) 推荐(1) 编辑
C常见机试题
摘要:初级:一.请编写函数long fun(long int x),功能是:将长整型数x中每一位上为奇数的数依次取出,并逆序和顺序分别构成一个新数返回。 例如:程序运行时输入123456789,输出:b=97531 和13579。#include //逆序输出long fun(long int x){ ... 阅读全文
posted @ 2014-07-04 12:18 Yogurshine 阅读(967) 评论(0) 推荐(0) 编辑
二维数组作为函数参数的几种方法
摘要:给定程序中,函数fun的功能是:有N×N矩阵,以主对角线为对称线,对称元素相加并将结果存放在左下三角元素中,右上三角元素置为0。**例如,若N=5,有下列矩阵: 1 2 3 4 5 计算结果为:1 0 0 0 0*/#include #define N 5void fun1(int a[N][N])... 阅读全文
posted @ 2014-07-02 11:42 Yogurshine 阅读(8402) 评论(0) 推荐(0) 编辑
VC++中如何复制对话框资源
摘要:法1:在你的工程中添加另一个工程的rc文件,这时资源视图中就会出现两个rc,从后加的rc中拷贝资源到你自己工程的rc中就可以了。法2:vc中如何拷贝一个工程的对话框资源到另一个工程中?这是一个很专业也很有用的问题。其实VC的设计者早就为我们考虑了这个问题。在VC6环境下,选择Class视图,选中想要... 阅读全文
posted @ 2014-05-05 23:34 Yogurshine 阅读(10990) 评论(1) 推荐(2) 编辑
概率法计算PI
摘要:#include using namespace std;//概率计算PIint main(){ int inside=0; double val; int i; for ( i=0; i<100000000; i++) { double x = (dou... 阅读全文
posted @ 2014-05-03 20:07 Yogurshine 阅读(1348) 评论(0) 推荐(0) 编辑
scanf printf sprintf fprintf
摘要:都是C语言中的函数,但C++保留了这些函数,在头文件iostream中声明了。1 scanf(格式控制,输出列表)printf (格式控制,输出列表)举例:#include using namespace std;int main(){ int a;float b;char c; //注意... 阅读全文
posted @ 2014-04-22 09:17 Yogurshine 阅读(841) 评论(0) 推荐(0) 编辑
C++ 输入输出流 文本文件 二进制文件读写
摘要:文本文件/ASCII文件(能直接显示内容,费存储空间):文件中每一个字节中均以ASCII代码形式存放数据,即一个字节存放一个字符,这个文件就是ASCII文件或称字符文件。二进制文件(不能显示内容,节省存储空间) :将内存中的数据存储形式不加转换的传送到磁盘文件,内存数据的映像文件,因为文件中的信息不... 阅读全文
posted @ 2014-04-21 19:40 Yogurshine 阅读(8885) 评论(0) 推荐(0) 编辑
String 类实现 以及>> <<流插入/流提取运算符重载
摘要:简单版的String类,旨在说明>> //#include //包含char*的字符串处理函数using namespace std;class String{public: String(){p=NULL;} String(char *str); void diaplay(); ... 阅读全文
posted @ 2014-04-21 09:48 Yogurshine 阅读(4668) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示