当前搜索:

c++实现解析文件路径

注意:本实现只能解析类似linux下的路径,即“/data/a.txt”,而不能解析“c:\a.txt” 或者“c:\\a.txt”,但是应该很容易扩展改写实现此功能。 FilepathParse.h #include using std::string; void parseFi...
阅读(889) 评论(0)

C++ STL中set底层实现方式

Q:STL中set底层实现方式? 为什么不用hash? A: 第一个问题:set底层实现方式为RB树(即红黑树)。     第二个问题:     首先set,不像map那样是key-value对,它的key与value是相同的。关于set有两种说法,第一个是STL中的set,用的...
阅读(2090) 评论(0)

C++中虚析构函数的作用

C++中的虚析构函数到底什么时候有用的,什么作用呢。 总的来说虚析构函数是为了避免内存泄露,而且是当子类中会有指针成员变量时才会使用得到的。也就说虚析构函数使得在删除指向子类对象的基类指针时可以调用子类的析构函数达到释放子类中堆内存的目的,而防止内存泄露的。 我们知道,用C++...
阅读(483) 评论(0)

c++ 虚函数的实现机制

转载自:http://blog.csdn.net/jiangnanyouzi/article/details/3720807 1、c++实现多态的方法 其实很多人都知道,虚函数在c++中的实现机制就是用虚表和虚指针,但是具体是怎样的呢?从more effecive c++其中一篇文章里面可以...
阅读(354) 评论(0)

fatal error LNK1169: 找到一个或多个多重定义的符号 的解决方案

昨天,尝试一个项目,遇到了如下的问题。先来还原一下: 头文件test.h #pragma once #include #include using namespace Eigen; using namespace std; class point2 { public: po...
阅读(3366) 评论(0)

C++给函数传数组参数C++给函数传数组参数

C++给函数传数组参数 在C++中,如果要给一个函数传入一个数组,一般都是传入两个参数一个数组指针和一个数组大小 例: void print_1 (int n, int *datas ) {     for (int i = 0; i     {         std::cout  ...
阅读(405) 评论(0)

C++标准库与Java基础类对照表

一、集合类  对象的集合,指如链表,数组,队列这一类的数据结构。在C++标准库中把这些成为Container, 在Java中称为Collection。   C++STL常用Container: vector, list, map, set, queue, stack, prior...
阅读(637) 评论(0)

fwrite,fread and fprintf,fscanf的一些使用体会

这周一直在完成一个任务,就是将训练出的多个model写成一个model。其中我们使用了c语言的读写方法,搞了一星期, 挖了很多坑,最终都铲平了。下面列举出若干有用的知识。 1.fwrite,fread VS fprintf,fscanf的区别 fwrite,fread 读写的时候,我发现不管使...
阅读(2597) 评论(0)

C++ limits头文件的用法(numeric_limits)

初学C++的时候,对这个模板很陌生,不知道它到底是做什么用的,今天拿起《C++标准程序库》,出现了它的讨论,所以决定好好研究一番。 1. numeric_limits是什么? (A)《C++标准程序库》: 一般来说,数值型别的极值是一个与平台相关的特性。C++标准程序库通过template ...
阅读(742) 评论(0)

变长参数

转载自:http://blog.csdn.net/tht2009/article/details/7019635    变长参数  设计一个参数个数可变、参数类型不定的函数是可能的,最常见的例子是printf函数、scanf函数和高级语言的Format函数。在C/C++中,为了通知编译器函...
阅读(460) 评论(0)

mutable、volatile的使用

(1)mutable        在C++中,mutable是为了突破const的限制而设置的。被mutable修饰的变量,将永远处于可变的状态,即使在一个const函数中,甚至结构体变量或者类对象为const,其mutable成员也可以被修改。 struct ST { int a...
阅读(478) 评论(0)

求二叉树的深度和宽度

// 求二叉树的深度和宽度.cpp : 定义控制台应用程序的入口点。 #include "stdafx.h" #include #include using namespace std; struct BTNode { char m_value; BTNode *m_l...
阅读(1045) 评论(0)

strcpy_s、sptintf_s与strcat_s的使用

strcpy_s、sptintf_s与strcat_s是strcpy、sptintf与strcat的安全版本,均是通过指定缓冲区长度来避免存在的溢出风险。 strcpy_s 与strcpy strcpy_s和strcpy函数的功能几乎是一样的。strcpy函数,就象gets函数一样,它没有方法...
阅读(1000) 评论(0)

C++类的内联成员函数应放在哪

今天复习C++ Primer的时候,看到了关于C++类的内联成员函数的放置,应该放在头文件中。那么这到底是为什么 呢?仅仅是一种代码规范问题还是必须这样做呢? 下面我就来讲讲我自己的理解吧。要彻底理解这个问题,首先就要了解下函数的声明和定义了。我们知道,函数可以 在多处声明,但只...
阅读(681) 评论(0)

十月读书心得

1.sizeof与strlen的区别。 #include using namespace std; void main() { cout << sizeof("hello") << endl; }答案: 6 原因: “hello”={‘h’...
阅读(662) 评论(0)

delete与delete[]的区别

一直对C++中的delete和delete[]的区别不甚了解,今天遇到了,上网查了一下,得出了结论。做个备份,以免丢失。     C++告诉我们在回收用 new 分配的单个对象的内存空间的时候用 delete,回收用 new[] 分配的一组对象的内存空间的时候用 delete[]。  关于...
阅读(450) 评论(0)

自定义String

#include #include using namespace std; class String{ public: String(); String(const char* str); ~String(); String(const String& rhs); Stri...
阅读(472) 评论(0)

京东2016校招编程题

记得有一个大题,说的是给定一个n*n的矩阵,要求从1开始填充矩阵,最后的矩阵是蛇形的。即如下: n=3,      7 8 1                 6 9
阅读(682) 评论(0)

偶数哥德巴赫猜想

已知不小于6的偶数都可以分成两个素数之和。请编写6到100000的所有偶数的分解,若有一个偶数可以分解成多个素数之和,只需写出一种即可。 #include #include using namespace std; bool isprime(int n)//判断素数 { int i ...
阅读(746) 评论(0)

二维数组的指针复习

最近一次的考试都是指针,真是给我深深上了一课,所以我特此复习一下指针方面的知识。 二维数组的指针
阅读(381) 评论(0)
    个人资料
    持之以恒
    等级:
    访问量: 34万+
    积分: 4756
    排名: 7616
    个人网站
    最新评论