- 博客(102)
- 资源 (8)
- 问答 (1)
- 收藏
- 关注
原创 如果相同的类名在两个嵌套的命名空间中定义,使用时最好显示标注命名空间
@C++ @TOCC++ 相同的类名,定义在不同的命名空间思考下面的代码。定义了两个class A,分别存在于命名空间MySpace,和SubSpace。namespace MySpace{ class A{ int a; public: A()=default; void Print(){cout<<"I'm class MySpace::A\n";} }; namespace Su
2021-10-25 16:03:36 394
原创 c++私有成员变量,还可以这样访问
基础不扎实,永远都是坑原来可以这样使用class 的private成员变量原来可以这样使用class 的private成员变量private成员变量只能类的内部使用,这句话刚学编程就记住了,可是今天还是遇到了一个颠覆我认知的代码。(如果不是同事提醒,我就可能多绕一圈!)#include <iostream>using namespace std;class testPriv...
2019-04-12 11:23:16 1146
原创 VS设置,将某一类型的文件,当做c++文件读源码
问题: 有很多自定义文件格式存储c++代码,但是用VS打开,却没有关键字高亮显示,不方便看代码。解决方案: 通过简单的VS设置,即可添加新的文件扩展类型,打开它,就像打开传统的*.cpp *.c *.h *.hpp代码文件一样,高亮显示代码。设置步骤: open VS2017-->Tools-->Options-->Text...
2018-09-28 16:48:55 993
原创 两个有序链表合并——非递归实现
#include <iostream>using namespace std;#include <stdlib.h> /* malloc, calloc, realloc, free */struct ListNode{ int value; ListNode* pNext;};ListNode* MergeList(ListNode* list1,...
2018-05-24 07:52:43 362
原创 Qt读取json文档内容
json文档格式如下:{ "content":[ //数组 { //object1 "key1":"键值1", "key2":"键值2" …… }, {
2017-12-20 17:49:54 2055
原创 使用Qt示例代码实现的视频播放。VS项目
最近越发感到Qt的强大,简单易用!从最开始接触是在今年4月底,花了半个月时间使用Qt和QtitanRibbon,开发了一个程序框架,类似于office风格那种。当时以为自己好厉害,现在相信全是因为Qt太强大(傻笑~~)好的库确实可以造福万民啊!(程序员从业人员已经超过千万了)言归正传,项目需要,要做一个视频播放功能,要求支持h264、mpg4等等格式。借助Qt示例代码,半天搞定
2017-11-27 21:25:53 3546
原创 c++与JavaScript的语法差异点,小笔记
项目需要,最近自学了一点JavaScript,记录一些两种不同语言的差异点。纯属个人笔记,写的不好也肯定有不足,感兴趣的朋友看看就好。c++:int、float、double、char……各式各样(整型、浮点型、字符、)JavaScript:var打遍天下! 数据只有以下区分:Number、NaN、Infinity、null、undefined--------------
2017-11-27 20:40:26 1890
原创 地球上一个点(经纬度),求其周围360度,距离1米的采样点的经纬度坐标(每10度采一个点,共36个点)
struct pointInEarth{ double lon;//经度 double lat;//纬度 double height;//高程};void surroundPoints(double longtitude, double latitude){ pointInEarth points[36];//结果在这里 double dis = 0.001;//两点之间的距离
2017-11-27 10:54:33 1560
原创 gdal播放视频代码
建议小伙伴们不用使用gdal做视频播放功能,除非你做的视频不需要声音,因为gdal不支持音频。。。函数功能:打开文件选择对话框,选择视频文件打开,播放代码如下:int g_slider_position = 0;CvCapture* g_capture = NULL;void CvTrackcallback(int pos){ cvSetCaptureProperty(
2017-11-24 11:34:53 351
原创 编译gdal
本人使用VS2013开发平台,需要编译 64位 Release版 gdal,步骤如下:(注意:修改命令参数,可自行选择VS版本,或者编译32位gdal。)----------------------------------------------------------从官网下载的gdal2.2.2源码,文件名 gdal222.zip将其解压到目录 D:\gdal-2.2.21.打开命令提示符,进到目录D:\gdal-2.2.2下2.执行命令: generate_vcxproj.bat 12.0
2017-09-27 12:54:07 2791
原创 网易有道2017春季实习笔试编程题-个人解答-欢迎高手来优化
(无法还原原题描述,根据个人理解简化了题目的描述。希望没有歧义,如有错误敬请包含。)(提供的代码已通过全部测试,已被Accepted。但是期望更好的解答,望高手不吝赐教,如能留下更好理解或性能更优的代码,将不胜感激。)第一题:从坐标原点(0,0)出发到目的地(dx,dy)的最快时间计算。可以直接步行走到目的地,也可以先走到附近的车站,然后坐车到目的地。x或y轴的一个单位走路
2017-03-28 22:46:48 1176
翻译 10个最顶尖的专业服装设计软件(外国)
外文原文连接:点击打开链接原文是2013年的英文文章,时间比较靠后,但是作为参考,也可以帮助我们了解一下计算机辅助设计在服装设计上的应用。时尚服装设计软件。不管是专业的服装设计师,还是业余爱好者都可以轻松满足。先列下名字:10.Virtual Fashion9. Dress Assistant8.Poser7.Realistic Apparel Templates Pa
2017-02-07 14:51:01 67832 2
原创 DirectX编程开发准备工作 ---Directx SDK安装,及在2010中的配置
最开始想当然的安装了DirectX,郁闷了半天,找不到安装目录。然后搜了DirectX 编程,才明白要安装DirectX SDK。。。这坑踩的。下载:DirectX SDK的下载地址:http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=6812附上看的网址:DirectX游戏开发编程基础
2017-02-04 16:12:06 1106
原创 OpenMesh速记
为了书写方便,定义 typedef OpenMesh::TriMesh_ArrayKernelT**取下标为i的顶点, 坐标MyMesh::VertexHandle v_h=mesh.vertex_handle(i);mesh.point(v_h);**从顶点v1到v2的半边MyMesh::HalfedgeHandle out_he_h=mesh.find_ha
2017-01-26 10:59:26 2540
原创 VS2010编译warning
warning C4018: “<”: 有符号/无符号不匹配warning C4482: 使用了非标准扩展: 限定名中使用了枚举warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失warning C4503: “std::vector<_Ty,_Ax>::erase”: 超出修饰名的长度,名称被截断
2017-01-05 12:04:11 2532
原创 查看论文是否被ISTP、EI检索
查了大半天,终于在网上找到了最快最准的方法,当然不保证是唯一的方法,只是个人记录一下,我终于查到自己的论文啦!ISTP检索:进入数据库检索网站:https://www.webofknowledge.com/直接输入论文相关信息(标题或作者或DOI……),查看搜索结果。能查到就说明论文已被ISTP检索了。常见问题解答:http://www.cpci-istp.com/
2016-12-19 11:44:48 41271 1
原创 二维数组指针、vector,实现m*n矩阵代码
运行结果截图:二维数组指针:#includeusing namespace std;int main(){ int m=0,n=0; cout<<"请输入矩阵的行数和列数:"<<endl; cin>>m>>n; int **arr=new int*[m]; for(int i=0;i<m;i++) arr[i]=new int[n]; cout<<"输入矩阵
2016-12-16 12:44:17 1106
原创 OpenMesh下载安装,在VS2010下使用的环境配置-备忘
VS2010环境配置 OpenMeshCored.lib;OpenMeshToolsd.lib;OpenMeshCore.lib;OpenMeshTools.lib;(项目属性—链接器—输入)E:\OpenMesh 3.3\lib;(项目属性——VC++目录——库目录)E:\OpenMesh 3.3\include;(项目属性——VC++目录——包含目录)
2016-12-12 12:26:17 1892
原创 Directx绘制正方体 +灯光 源代码
#include#include #include "d3dx9.h" //Driect9.0的头文件#include#pragma comment(lib,"Msimg32.lib")#pragma comment(lib,"winmm.lib")#pragma comment(lib,"d3d9.lib")#pragma comment(lib,"d3dx9.lib
2016-12-08 13:18:19 1546
原创 Directx09 创建窗口代码
#include"d3d9.h"#include"d3dx9.h"//-------------------------global variables---------LPDIRECT3D9 g_pD3D=NULL;LPDIRECT3DDEVICE9 g_pd3dDevice=NULL;VOID Cleanup(){ if( g_pd3dDevice != NULL)
2016-12-07 11:13:06 462
原创 python入门-----有编程基础,直接写代码
推荐一个超好用的python代码练习网址,省去你安装环境的烦恼(补充一点,这个环境不能导入包,如果想在网页上练习导入包的程序,可以去官网首页,代码示例的右上角有个图标,点进去可以在线练习,不过缺点是速度有点慢):进入http://pythontutor.com/ ,点页面中央偏上的Live Programming环境类似下图:(左边写代码,可以一步一步执行(下边),右边是运行时参
2016-11-16 22:45:02 2229
转载 C++中 volatile关键字,实现多线程编程必备
讲讲C++中的volatile关键字引子1 猜猜看,下面这段代码有什么问题:1234void Delay(UINT32 n){ while(—n);} 答案: 本来代码完全正常,但是为了优化性能,打开了编译器的优
2016-11-09 12:45:46 1088
原创 用数组实现整数集合
#include#includeusing namespace std;class IntSet{public: IntSet(); IntSet(int a); void Empty(); bool IsEmpty(); bool IsMemberOf(int a); int Add(int a); bool Sub(int a); bool IsEqual(IntSe
2016-10-31 21:45:10 45204
原创 打印100以内的素数(质数)----C++实现、python实现
空间复杂度O(n),时间复杂度较快的代码(到底多少呢,求解答):(思想:当i是质(素)数的时候,i的倍数必然是合数。如果i已经被判断不是质数了,那么再找到i后面的质数来把这个质数的倍数筛掉。)Python实现:#输出100以内的素数data=[]for i in range(2,101): data.append(i)for j in data: i=j
2016-10-31 13:30:17 3021
原创 图形分割算法<==>最小割<==>最大流<==>网络流问题
最近研究图形分割算法,然后就牵扯出了网络流问题中的最大流最小割问题。反过来学习才是最好的掌握和理解路线:第一、什么是网络流问题?第二、最大流、最小割上图网络流就是求解最大流的一个实例。由此,可以引出最大流的一些基本的定义和概念可以这样看,图就是一种管道,管道有最大通过流量的限制,图中边的权值就是所谓的“容量”。同时,注意有唯一的源点和汇点。
2016-10-14 12:46:23 23468
原创 STL容器-数据结构-特性
STL容器 对应底层数据结构 vector -数组,随机存取序列容器 set -红黑树,有序 map -红黑树,有序 list -双向环状链表,快速增删 multimap -红黑树,有序 multiset -红黑树,有序 stack -适配器,是对容器的再封装 queue -适配器,是对容器的再封装 deque-(double-ended queue
2016-10-11 12:13:58 404
原创 指针、++。易错小程序示例
#include#includeint main(){ int arr[]={6,7,8,9,10}; int *ptr=arr; *(ptr++)+=123; printf("%d,%d\n",*ptr,*(++ptr)); system("pause"); return 0;}此程序输出结果为:8,8第一个坑在于:注意自增运算符++;第二个坑在于c中的p
2016-10-10 10:28:55 390
转载 superLU 在VS2010中的配置
1、从官网下载SuperLU文件: http://crd-legacy.lbl.gov/~xiaoye/SuperLU/2、生成库文件:生成SuperLU.lib文件:(1)新建一个工程,命名为SuperLU,先将SuperLU\SRC 中的所有的.c文件添加到源文件文件夹中,所有的.h文件添加到头文件文件夹中。并在工程的属性->C/C++->常规->附加包含目录中加入
2016-08-28 10:42:19 1998 1
原创 Iterator设计模式,探究STL中迭代器的实现原理
官方定义:Iterator模式是行为模式之一,它把对容器中包含的内部对象的访问委让给外部类,使用Iterator(遍历)按顺序进行遍历访问的设计模式。《STL源码剖析》中关于迭代器Iterator的描述:STL设计的精髓在于,把容器(Containers)和算法(Algorithms)分开,彼此独立设计,最后再用迭代器(Iterator)把他们粘合在一起。可见迭代器
2016-08-12 15:32:23 816
原创 1. Two Sum(c++实现)
class Solution {public: vector twoSum(vector& nums, int target) { vector backup(nums); sort(nums.begin(),nums.end()); vector::iterator i1=nums.begin(),i2=nums.end()-1;
2016-07-28 13:01:22 1752 1
原创 codeblocks编译出错问题的解答!(编译c++ 或者c程序)
典型错误:execution of 'mingw32-g++.exe ……faile!codeblocks cannot exec `cc1plus': No such file or directory出现这样的错误,都是因为编译器没安装成功,或者没有设置好!从设置过程就可以知道有没有安装g++编译器。设置方法:Settings——Compiler…一般默认c
2016-07-28 12:58:11 59391
转载 用Understand阅读 VS2010项目源码!
一、查看vs2010项目 打开understand,File—New—Project...—Next—Next 【向导第三步,选“Import Visual Sudio project files”】 【向导第四部,Add—添加.sln,VS项目文件—OK】
2016-07-22 12:28:24 1815
原创 使用code blocks 查看VS2010项目
File——New——Project...——Empty Project——Next——填写项目名,存储路径,Next——Finish。将VS2010项目文件拷贝到 刚刚新建的项目路径里。右击项目名——Add files recursively——把拷贝的文件添加进去。
2016-07-22 12:22:53 2193
原创 使用Source Insight 查看VS2010项目
单击菜单项Project——New Project...——地址选择VS2010项目所在文件夹,单击OK——OK——Add All——OK——确定——Close在右侧窗口可以看到所有VS2010项目文件列表,点击下方按钮可以切换视图。右侧分类试图;双击类名打开类头文件:
2016-07-22 12:13:11 3151
转载 代码审阅软件Understand
Understand 是一个静态代码分析工具,用来分析和阅读大规模项目代码非常方便,功能强大!可通过其 Perl API 来进行定制 。支持的语言包括:Ada、C/C++、C#、Java、Fortran、Pascal、Perl 等等。
2016-07-21 20:34:50 1181
原创 加减乘除的c++实现
算法描述参考:http://www.cnblogs.com/kiven-code/archive/2012/09/15/2686922.html#include using namespace std;int Add(int a,int b)//加法{ int x,y,icarry=0;//icarry进位标志 int result=0; //从低位到高位 按位加 f
2016-06-30 17:56:37 6656
原创 371. Sum of Two Integers
不用考虑正负数的问题,因为负数在计算机中用补码表示,所以用正常的加法规则计算即可!class Solution {public: int getSum(int a, int b) { int x,y,icarry=0; int result=0; //位二进制加法,icarry进位标志 for(int n=0;n<32;n++){
2016-06-30 15:57:42 556
原创 300. Longest Increasing Subsequence(C++实现)
动态规划算法,运行时间不短,以后再更新。class Solution {public: int lengthOfLIS(vector& nums) { //动态规划,f[i]存储以第i个元素结尾的最长子序列。 const int N=nums.size(); if(N<=1)return N; int f[N],max=
2016-06-30 09:52:04 454
原创 354. Russian Doll Envelopes(C++实现)
运行时间较长,有时间再改进吧class Solution {public: void sort(vector>& s) { const int N=s.size(); //insert sort从小到大排序 for(int i=1;i<N;i++) { int first=s[i].fir
2016-06-29 22:16:29 977
原创 第一次运行DirectX项目 ——相关问题解决
环境配置: 项目属性设置--包含目录和库目录,要包含DirectX安装路径上的Include文件和Lib文件。包含目录 D:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Include库目录 D:\Program Files (x86)\Microsof
2016-06-22 20:49:01 768
Release版64位gdal动态链接库
2017-11-20
gdal动态链接库(64位Release版)
2017-11-20
VC ++编程指南
2015-01-01
使用vs2013编译64位的gdal源码
2017-09-26
TA创建的收藏夹 TA关注的收藏夹
TA关注的人