c++
文章平均质量分 55
qmsggg
ubuntu爱好者
展开
-
c/c++总结
1. 0X00x0地址是NULL 2. Gdb调试子进程1.set follow-fork-mode 这条命令可以用于在调试父进程或是子进程的模式之间进行切换。例如在fork函数执行之前执行set follow-fork-mode child, 当fork执行后,设定在子进程上的断点将会有效,而父进程上的断点此时无效;反之依然。缺省gdb是调试主进程的。 2.转载 2013-10-04 22:15:10 · 3331 阅读 · 0 评论 -
内存堆和栈的区别
内存堆和栈的区别原文: http://student.csdn.net/link.php?url=http://www.top-e.org%2Fjiaoshi%2Fhtml%2F427.html在计算机领域,堆栈是一个不容忽视的概念,我们编写的C语言程序基本上都要用到。但对于很多的初学着来说,堆栈是一个很模糊的概念。堆栈:一种数据结构、一个在程序运行时用于存放的地方,这转载 2014-08-22 21:17:55 · 437 阅读 · 0 评论 -
References as class members
1.Declared without initial value2.Must be initialized using constructor原创 2014-09-08 14:12:24 · 536 阅读 · 0 评论 -
c++之拷贝构造函数的研究
问题:#include #include using namespace std;static int objectCount = 0;class HowMany {public: HowMany() { objectCount++; print("HowMany()"); } void print(const string& msg = "") { if (m原创 2014-09-09 16:37:16 · 554 阅读 · 0 评论 -
C++方法模板
template class Grid{public: Grid(size_t inWidth = kDefaultWidth, size_t inHeight = kDefaultHeight); Grid(const Grid& src); template Grid(const Grid& src); virtual ~Grid(); Grid& operator=(c原创 2014-09-10 14:49:53 · 480 阅读 · 0 评论 -
智能指针类之shared_ptr
shared_ptr在默认的情况下将使用标准的new和原创 2014-09-11 10:42:41 · 742 阅读 · 0 评论 -
编写自己的指针类
#include #include #include template class SuperSmartPointer{public: explicit SuperSmartPointer(T* inPtr); virtual ~SuperSmartPointer(); SuperSmartPointer(const SuperSmartPointer& src); Sup原创 2014-09-11 23:56:50 · 558 阅读 · 0 评论 -
c++内存泄露
#include using namespace std;class Simple {public: Simple() { mIntPtr = new int(); } ~Simple() { delete mIntPtr; } void setIntPtr(int inInt) { *mIntPtr = inInt; }protected: int *mIntPt原创 2014-09-12 10:40:12 · 677 阅读 · 0 评论 -
c++带有虚函数的对象的大小问题
如下代码:#include using namespace std;class A{public: int b; char c; virtual void print() { cout << "this is a father's function!" << endl; }};int main(){ cout << sizeof(A) << endl;}输原创 2014-09-13 09:57:12 · 752 阅读 · 0 评论 -
类的静态成员数据变量
代码如下:#include using namespace std;typedef struct person { int id; char sex; static int count; static long count2;} person;int main(){ person a; cout << sizeof(a) << endl; cout << sizeo原创 2014-09-14 00:23:27 · 523 阅读 · 0 评论 -
用数组实现顺序存储二叉树及操作的实现
#include #include #include #include #include #define TRUE 1#define FALSE 0#define OK 1#define ERROR 0#define MAX_TREE_SIZE 100#define MAX_QUEUE_SIZE 5#define Nil ' ' typedef char TElem原创 2014-09-03 10:21:38 · 1307 阅读 · 0 评论 -
realloc函数
2009-10-12 16:08 963人阅读 评论(1) 收藏 举报leakincludenull[cpp] view plaincopyinclude "stdlib.h" #include "stdio.h" void main() { int *i = (int*)malloc(sizeof(int)); *i = 1; //原创 2014-09-03 15:48:34 · 544 阅读 · 0 评论 -
利用已知函数判断字符串是否为另一字符串的子串
题目假设你有一个isSubstring函数,可以检测一个字符串是否是另一个字符串的子串。 给出字符串s1和s2,只使用一次isSubstring就能判断s2是否是s1的旋转字符串, 请写出代码。旋转字符串:”waterbottle”是”erbottlewat”的旋转字符串。解答题目说我们使用一次isSubstring函数就可以判断s2是否是s1的旋转字符串, 如果从原始字符转载 2014-09-04 17:16:30 · 1902 阅读 · 1 评论 -
非整数数组索引
代码如下:#include #include class AssociativeArray {public: AssociativeArray(); virtual ~AssociativeArray(); int &operator[](const std::string &key); const int &operator[](const std::string &key)原创 2014-09-06 09:35:41 · 812 阅读 · 0 评论 -
编写自己的异常类
#include #include #include #include #include #include #include #include using namespace std;class FileError :public runtime_error {public: FileError(const string& fileIn) : runtime_error(原创 2014-08-22 20:40:36 · 695 阅读 · 0 评论 -
对#define和inline的一点理解
#include using namespace std;#define f(a) (a)+(a)int main(){ double a = 4; printf("%lf %d\n", f(a), f(a)); return 0;}原创 2014-09-05 19:59:34 · 588 阅读 · 0 评论 -
输入一个字符串,取出其中的整数(实现代码)
输入一个字符串,内含所有数字和非数字字符。将其中连续的数字作为一个整数,依次存放到一个数组中,统计共有多少个整 数,并输出这些数题目:输入一个字符串,内含转载 2013-10-06 22:54:13 · 3694 阅读 · 0 评论 -
Single Number
Given an array of integers, every element appears twice except for one. Find that single one.Note:Your algorithm should have a linear runtime complexity. Could you implement it without using ext原创 2014-04-02 20:35:54 · 547 阅读 · 0 评论 -
Hello Qt
开始学习Qt程序设计#include #include int main(int argc, char *argv[]) { QApplication app(argc, argv); QLabel *label = new QLabel("hello world"); label->show(); return app.exec();}>main中第一行创建了一个QAp原创 2014-04-02 20:48:32 · 744 阅读 · 0 评论 -
Qt与HTML的结合使用
QLabel *label = new QLabel("Hello Qt!");通过使用简单的HTML样式格式,就可以轻松地把Qt应用程序的用户接口变为更丰富多彩!原创 2014-04-02 20:54:06 · 4209 阅读 · 0 评论 -
不一样的Sqrt(x)
Implement int sqrt(int x).Compute and return the square root of x.这个题目我做了很长一段时间才通过,原因有很多,但是最头痛的是超时和越界;最后看了别人的代码才知道用二分,,,,要用unsigned long long,不然会越界;class Solution {public: int原创 2014-04-02 21:47:20 · 786 阅读 · 0 评论 -
一个 fork 的面试题
题目:请问下面的程序一共输出多少个“-”?01#include 02#include 03#include 04 05int ma转载 2014-04-11 12:58:22 · 554 阅读 · 0 评论 -
C语言的谜题
C语言的谜题2009年5月31日陈皓发表评论阅读评论68,615 人阅读 这几天,本站推出了几篇关于C语言的很多文章如下所示:语言的歧义 [酷壳链接] [CSDN链接]谁说C语言很简单? [酷壳链接] [CSDN链接]6个变态的C语言Hello World程序 [酷壳链接] [CSDN链接]如何加密/弄乱C源代码 [酷壳链接] [CSDN链接]C语转载 2014-04-11 13:00:53 · 714 阅读 · 0 评论 -
语言的歧义
语言的歧义语言是人与人相互沟通的途径,而计算机语言则是人和计算机沟通的途径。就算是任何再完美的自然语言都会有歧义,但是又是什么让人和计算计算机间产生了歧义呢?下面这篇文章来自Gowri Kumar的Puzzle C一文。我做了一些整理,挑选了其中的一些问题,并在之后配上相应的答案(这些答案是我加的,如果需要原版的答案可以直接和本文作者Gowri Kumar联系,作者的联系方式可以从这里转载 2014-04-11 13:26:45 · 987 阅读 · 0 评论 -
谁说C语言很简单?
谁说C语言很简单C语言并不简单,让我们来看看下面这些示例:为什么下面的代码会返回0?(这题应该很简单吧) int x; return x == (1 && x);本题主要是关于C/C++中变量初始化的问题。 为什么下面的代码会返回0而不是-1? return ((1 - sizeof(int)) >> 32);答案:sizeof 是一个uns转载 2014-04-11 13:31:55 · 769 阅读 · 0 评论 -
C++ limits头文件的用法(numeric_limits)
C++ limits头文件的用法(numeric_limits) 2012-05-13 17:14:07| 分类: C / C++ | 标签:limits |举报|字号 订阅初学C++的时候,对这个模板很陌生,不知道它到底是做什么用的,今天拿起《C++标准程序库》,出现了它的讨论,所以决定好好研究一番。1. numeric_limits是什么?(A转载 2014-07-30 16:41:45 · 881 阅读 · 0 评论 -
重载下标运算符
自己实现一个动态分配的数组原创 2014-09-05 10:32:57 · 984 阅读 · 0 评论 -
const成员函数
#include using namespace std;class A { int i;public: A() : i(0) {} void f() { cout << "f()" << endl; } void f() const { cout << "f() const" << endl; }};int int main(int argc, char const *原创 2014-09-05 23:21:27 · 459 阅读 · 0 评论 -
c++ static关键字使用含义总结
修饰普通变量,修改变量的存储区域和生命周期,使变量存储在静态区,在 main 函数运行前就分配了空间,如果有初始值就用初始值初始化它,如果没有初始值系统用默认值初始化它。 修饰普通函数,表明函数的作用范围,仅在定义该函数的文件内才能使用。在多人开发项目时,为了防止与他人命名空间里的函数重名,可以将函数定位为 static。 修饰成员变量,修饰成员变量使所有的对象只保存一个该变量,而且不需要生成...原创 2019-06-08 15:11:18 · 351 阅读 · 0 评论