c和c++的学习
文章平均质量分 74
jiang111_111shan
这个作者很懒,什么都没留下…
展开
-
MFC遇到的问题总结
1. 使用类调用对话框,有时弹不出来。 嵌入时 有时嵌不进去。弹不出来试着调一调属性中的Visible选项,嵌不进去试着调一调属性里面的Style选项。2. 添加成员变量向导时改变变量类型的方法。先用向导生成,然后再手动修改。3. 在GroupBox上放置其他控件,GroupBox显示在上面,挡住了部分其他控件的显示,显得...原创 2016-06-23 18:13:16 · 1856 阅读 · 0 评论 -
string 流(sstream头文件下属的三个类型)
sstream下属三个类型的使用原创 2015-07-07 16:53:28 · 766 阅读 · 0 评论 -
顺序栈的简单操作
今天简单的实现了一下顺序栈,栈的核心函数是push(),top(),pop()。首先是我自己编写的栈,后面是STL标准库调用栈函数。sqstack.h//栈的简单实现lifo#ifndef SQSTACK_H_#define SQSTACK_H_const int DEFAULT_SIZE=10;#include using std::cout;using std::endl;原创 2015-05-25 17:05:13 · 1154 阅读 · 0 评论 -
二叉树的建立、三种(递归、非递归)遍历方法
二叉树定义:1.有且仅有一个特定的称之为根root的结点2.当n>1时,除根结点之外的其余结点分为两个互不相交的子集。他们称为二叉树的左子树和右子树。二叉树的一种建立方法:若对有n个结点的完全二叉树进行顺序编号(1=1)的结点。当i=1时,该结点为根,它无双亲结点;当i>1时,该节点的双亲编号为[i/2];若2i当2i+1利用上个性质,对任意二叉树,先按满二叉树原创 2015-06-08 21:42:24 · 1989 阅读 · 0 评论 -
使用函数模版作为函数参数
今天用函数模版进行编程的时候,出现错误了,具体错误如下:// template0629.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include using namespace std;template T Add(T a, T b){ return a+b;}template T Multiply(T c, T d){原创 2015-06-29 10:11:26 · 1171 阅读 · 0 评论 -
双向链表的简单操作
上篇的链表时只有一个后继的指针域,这样只能从从左向右进行查找其他结点,如果要查找前驱结点,则只能从表头出发进行查找,效率较低,这篇我们研究一下双向链表。链表的结点有两个指针域,分别指向前驱和后继。程序实现:(DbLinkList.h)#ifndef DBLINKLIST_H_#define DBLINKLIST_H_#include //结点类template struct Db原创 2015-05-23 17:48:43 · 530 阅读 · 0 评论 -
十字链表
今天研究了一下十字链表,当稀疏矩阵的内部元素经常变化时,用三元顺序表操作起来比较麻烦,故用链表来实现对稀疏矩阵的存储,由于矩阵具有二维特性,单链表显然不适用,采用十字链表来实现对稀疏矩阵的存储。十字链表有三种结点,1.总表头结点 2.行列表头结点 3.非零元素结点。下面一一介绍1.总表头结点 共有5个子域RowColNext原创 2015-06-04 16:59:56 · 1347 阅读 · 0 评论 -
用关联容器实现文本替换单词
C++关联容器的小例子原创 2015-06-24 16:37:11 · 854 阅读 · 0 评论 -
STL标准库的关联容器
关联容器支持高效的关键字查找和访问。map中的元素是一些关键字-值(key-value)对:关键字起到索引的作用,值则是表示与索引相关联的数据。set中每个元素只包含一个关键字,可以说set是一个特殊的map。标准库提供8个关联容器,允许重复关键字的容器的名字中都包含单词multi;不保持关键字按顺序存储的容器的名字都以unordered开头。因此一个unordered_multi_set是一原创 2015-06-23 16:55:59 · 467 阅读 · 0 评论 -
稀疏矩阵三元组顺序表
有这样一种矩阵,大多数元素的值为零,只有少部分为非零元素。而这些非零元素在矩阵中的分布又没有明显的规律,这种矩阵称为稀疏矩阵。本文才有顺序组织来存储稀疏矩阵,存取稀疏矩阵非零元素需要三个参数,行号、列号和数据值。本文实现了稀疏矩阵的构造和转置以及显示。thrinode.h#ifndef THRINODE_H_#define THRINODE_H_const int MAXSIZE=原创 2015-06-03 09:22:39 · 1605 阅读 · 0 评论 -
串(string)类的简单实现
串(String)又称字符串,是一种特殊的线性表,表中的元素是单个字符,串是由n个字符组成的有限序列。S="c1c2c3c4...cn"............(n>=0)本文实现了串的初始化,串长度的计算,求子串,插入、删除、加法、找位置以及串的输出等函数。String.h#ifndef STRING_H_#define STRING_H_#include class St原创 2015-06-01 21:31:02 · 611 阅读 · 0 评论 -
打印zigzag数组
今天花了不少时间来研究如何打印一个之字形zigzag矩阵,参考了下http://blog.163.com/yangjun1988422@126/blog/static/4741291720117842634276/,具体思路和程序在下面。// test2.cpp : 定义控制台应用程序的入口点。//Date:2015年6月17日//Author: jsalienzy /*原创 2015-06-18 11:10:08 · 745 阅读 · 0 评论 -
递归二叉树建立和遍历及深度计算
上篇咱们说到二叉树的一种建立方法及三种遍历方法的递归非递归算法。这篇换了一种新的建立方法,用先根遍历递归的思路建立二叉树,用递归的方法计算深度,用中根递归和非递归方法遍历整个二叉树。BinaryTree.h//二叉树的建立和遍历#ifndef BINARYTREE_H_#define BINARYTREE_H_#include typedef int T;struct Node原创 2015-06-09 21:15:58 · 2068 阅读 · 0 评论 -
一道c/c++面试题的解题思路
内存中的数据对齐的面试题原创 2015-06-10 20:59:31 · 1086 阅读 · 0 评论 -
c++训练题(数字的2~6倍只改变数字的顺序)
题目:It can be seen that the number, 125874, and its double, 251748, contains exactly the same digits, but in a different order. Find the smallest positive integer, x, such that 2x, 3x, 4x, 5x, and 6x,原创 2015-07-09 10:39:45 · 1437 阅读 · 0 评论 -
OpenCV的Mat和Halcon的HObject类型互相转换
项目之前一直使用的OpenCV,最近有个小问题使用Halcon有更好的效果,于是有了cv::Mat和Halcon中HObject互相转换的需求。参考了博客http://blog.csdn.net/u010627377/article/details/76687178,我使用他的代码的时候出错了,于是在其基础上稍微做了下修改。Halcon的版本是13,OpenCV的版本是3.2。如有问题,欢迎讨原创 2017-10-19 11:29:05 · 6275 阅读 · 2 评论 -
静态链接库、动态链接库使用方法
总结一下动态链接库和静态链接库。原创 2017-08-27 20:18:44 · 4137 阅读 · 1 评论 -
使用VS自带Dumpbin判断动态链接库.dll和应用程序.exe是32位还是64位
判断动态链接库.dll和应用程序.exe是32位还是64位原创 2017-04-15 19:51:11 · 5301 阅读 · 1 评论 -
调试时的Assert用法
c++中断言assert使用的简要说明原创 2017-04-15 18:59:50 · 5022 阅读 · 0 评论 -
二进制、十进制、十六进制互相转换
今天看书讲到十进制、二进制、十六进制的互相转换,自己试了下。十进制和十六进制互相转换需要借助二进制作为中间媒介。用到了STL标准库的向量、队列、字符串。// decimal2hex2decimal.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include #include #include using names原创 2016-02-29 23:01:10 · 1357 阅读 · 0 评论 -
学习函数指针
函数指针是指向函数的指针变量,即本质是一个指针变量。int (*f) (int x);//声明一个函数指针f=fun;//将fun函数的首地址赋给指针f指向函数的指针包含了函数的地址,可以通过它来调用函数。声明格式如下:类型说明符 (*函数名)(参数)这里的函数名不应该称为函数名,应该叫指针的变量名。这个特殊的指针指向一个返回整型值的函数。指针的声明必须和它指向函数的声明保持一转载 2015-09-12 10:36:39 · 711 阅读 · 0 评论 -
单链表的析构函数
刚看到一个单链表的析构方法,是我上次没有想到的,记下来,其实很简单,就是从链表的第一个开始析构,然后循环析构第一个结点,直到只剩下第一个结点,然后释放它。LinkList::~LinkList(){ Node *tempptr; while(head->next!=NULL) { tempptr=head->next; delete head; head=tempptr;原创 2015-07-31 21:37:31 · 8293 阅读 · 0 评论 -
Project Euler18题 从上往下邻接和
题目:By starting at the top of the triangle below and moving to adjacent numbers on the row below, the maximum total from top to bottom is 23.37 42 4 68 5 9 3That is, 3 + 7 + 4 + 9 = 23.Find原创 2015-07-16 09:06:49 · 1359 阅读 · 0 评论 -
c++训练题(牵扯到大数据的保存)
题目:The 5-digit number, 16807=7^5, is also a fifth power. Similarly, the 9-digit number, 134217728=8^9, is a ninth power. How many n-digit positive integers exist which are also an nth power?题目的大概意思是原创 2015-07-08 09:54:08 · 1464 阅读 · 0 评论 -
质数筛选方法(埃拉托斯特尼筛法)
今天刷题刷了这么一道题,The sum of the primes below 10 is 2 + 3 + 5 + 7 = 17. Find the sum of all the primes below two million.大概意思是10以内的质数加法和为 2 + 3 + 5 + 7 = 17,接着求2000000以内质数加法的和。分析:要求2000000内质数的和,首先得把原创 2015-07-10 20:59:56 · 6229 阅读 · 0 评论 -
c++训练题(求某个数的最大质数因子)兼自己写的一个打印一定范围内质数方法
质数的算法,求解最大质数因子原创 2015-07-09 16:28:38 · 4239 阅读 · 0 评论 -
c++编译时遇到的错误总结(不定期更新,遇到问题就写在这里面)
c++编译时遇到的问题总结原创 2015-03-24 09:41:16 · 1302 阅读 · 1 评论 -
螺旋队列的打印
之前写过一篇螺旋矩阵的打印,那次是从外向内旋转,这次改成从内向外旋转,网上搜的资料基本都只有奇数的情况下,我稍微扩充了一下偶数,这种打印矩阵的题就是麻烦,要找规律然后不断的进行调试,废话少说,把我的方法贴出来以后自己看看也能有点提高。今天实在是不想详细写了。代码:// test3.cpp : 定义控制台应用程序的入口点。//打印螺旋矩阵/* * 21 22 23 24 25 * 2原创 2015-06-18 20:17:40 · 827 阅读 · 0 评论 -
循环链表和约瑟夫环
循环链表和约瑟夫问题原创 2015-05-21 16:52:28 · 1066 阅读 · 0 评论 -
多态和虚函数详解
转自:http://blog.chinaunix.net/uid-21411227-id-1826646.html一.多态性的概念: 1.多态:在面向对象方法中一般是这样表述多态性的: 向不同的对象发送同一个消息,不同的对象在接收时会产生不同的行为(即方法)。也可以说,多态性是“一个接口,多种方法”。2.从系统实现的角度看,多态性分为两类: 静态多态性和动态多态性。以前学过的函转载 2015-03-26 17:40:37 · 569 阅读 · 0 评论 -
const的常见用法
const用法主要是防止定义的对象再次被修改,定义对象变量时要初始化变量下面介绍几种常见的用法:1.用于定义常量变量,这样这个变量在后面就不可以再被修改const int Val=10;//Val=20;//错误,不可被修改2.保护传参时参数不被修改,如果使用引用传递参数或按地址传递参数给一个函数,在这个函数里这个参数的值若被修改,则函数外部传进来的变量的值也发生改变,若想保护转载 2015-03-27 15:15:09 · 430 阅读 · 0 评论 -
模版库简介
STL简介原创 2015-04-04 11:39:19 · 662 阅读 · 0 评论 -
vector的一些最基本用法(遍历,是否为空等)
vector的基本用法原创 2015-04-15 21:41:52 · 2774 阅读 · 0 评论 -
字符串中单个字符的用法
我们使用字符串时经常要对字符串中单个字符进行处理,比如检测一个string对象是否包含空白,或者把string对象中的字母大写改为小写,查看某个特定字符是否出现,判断字符串是否为数字等等。这类处理的关键是要获取字符本身。有时需要处理string对象中的每一个字符,另外一些时候则只需处理某个特定的字符,还有些时候遇到某个条件处理就要停下来。 在cctype头文件中定义了一组标准库函数处理字原创 2015-04-21 16:53:21 · 1736 阅读 · 0 评论 -
c和c++的一些训练题(3)(8皇后游戏)
八皇后游戏的说明:问题的提出:八皇后是个古老而有趣的游戏,是由高斯于1850年首先提出的。要求在国际象棋的棋盘上放置八个皇后,使其不能相互攻击,即任意两个皇后不能处于棋盘的同一行、同一列和同一条对角线上。试问有多少种放法?基本思想是:先把皇后放在(0,0)位置,然后把1号皇后放在(1,j)位置,使其满足要求。接着放2号皇后,依此类推。遇到某个皇后如把她无论放在该行的任意位置均不满足要求,则原创 2015-03-12 16:34:01 · 900 阅读 · 0 评论 -
c和c++的一些训练题(7)(编排日历)
问题的提出:日历的编排是每400年一个大循环周期,即今年的月、日、星期几和400年前的完全一样。现行天文历法根据天体运行规律,取每年365.2425天。这样,每400年共有365.2425×400=146097天。如果以365天作为一年,每400年就少了0.2425×400=97天。这97天要靠设置闰年(每年366)天来凑齐,所以,每400年要设置97个闰年。 编程思路:按照以上背原创 2015-03-17 09:58:19 · 956 阅读 · 0 评论 -
c和c++的一些训练题(11)(二分查找法和顺序查找法)
问题的提出:编写程序对数据序列采用二分查找法和顺序查找法查找元素的下标,要求使用类模板实现(其中二分法查找算法要求用递归实现,给定数据序列有序)。原创 2015-03-21 23:33:56 · 878 阅读 · 0 评论 -
c++随机数生成
原博客:http://blog.sina.com.cn/s/blog_79ab4be10100uzrj.html博主也是引用别人的博客,我就不再把博主引用的博客贴上来了。计算机的随机数都是伪随机数,即使由小M多项式序列生成的,其中产生每个小序列都有一个初始值,即随机种子。(注意:小M多项式序列的走起是65535,即每次利用一个随机种子生成的随机数的周期是65535,当你取得65535个随机转载 2015-03-26 11:20:50 · 629 阅读 · 0 评论 -
STL标准模版库字符串的用法(下)
贴些各种函数使用的代码:// string_.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include #include using namespace std;int _tmain(int argc, _TCHAR* argv[]){ string var("abcdefghijklmn"); const原创 2015-04-13 10:50:20 · 441 阅读 · 0 评论 -
c和c++的一些训练题(2)(复制类)
问题的提出:编写程序实现对象资源的拷贝(要求使用this指针)。原创 2015-03-12 10:26:22 · 534 阅读 · 0 评论