Skip to content

Mac狗

我是一只Mac狗,旺旺旺

Primary Navigation Menu

Menu
  • 主页
    • LargeImage
    • Blog Full Content
    • Blog With Sidebar
    • small-image
    • blog-masonry
  • 游戏开发
    • 客户端
      • Unity
    • 服务器开发
  • Linux
    • 桌面试玩
    • 命令技巧
    • 基础知识
  • 编程语言
    • C/C++
    • c#
    • Lua
    • Python
    • Shell
  • WordPress
    • 主题/插件
    • 博客建设
    • 平台技巧
  • MacBook
    • 使用技巧
    • 功能定制
  • Windows
    • 批处理
    • 善用佳软
  • 音乐
  • 关于
    • links
    • about
    • myself

c++

c++中 try-catch 返回数组位导致[不是所有的控件路径都返回值]的问题

2017-07-19
By: macgou
On: 2017年7月19日
In: C/C++, 程序设计
With: 0 Comments

使用C++的经常返回一个列表中的东西,而带的参数是一个位置,常常在判断位置时给出异常让它不再向下走,并且有专门的异常处理。 基本的结构大概如下,但是以Catch之外,如果没的返回值,会得到一个[不是所有的控件路Read More →

[C/C++]小议数组作为参数

2013-09-13
By: macgou
On: 2013年9月13日
In: C/C++, 程序设计
With: 0 Comments

一、普通方式 在C++中,数组永远不会按值传递。它是传递第0个元素的指针同,数组的长度与参数声明无关。 下列三个方式是等价的: void fun(int*); void fun(int[]); void funRead More →

[C++]关于数组的引用和引用的数组

2013-09-13
By: macgou
On: 2013年9月13日
In: C/C++, 程序设计
With: 0 Comments

一、大概区别 就像指针的数组和数组的指针一样耐人寻味

1
2
3
4
5
6
//array首先向右结合,所以这个相当于 (int&)array[] array是个数组,其中的元素是引用
//应该叫:引用的数组
int &array[]
//array首先和&结合,所以array是引用,引用的对象是数组
//应该叫作数组的引用
int (&array)[10]

二、引用的数组 首先,可以明确的说明,引用的数组是不能当函数的参数的。再者要说明,这种方式Read More →

[C/C++]一个指针数组的迭代器(修正)

2013-09-13
By: macgou
On: 2013年9月13日
In: C/C++, 程序设计
With: 0 Comments

今天回忆了一下,又发现一个问题出来了,好像掉坑里去了,或者我这个的立意就是错误的吗? 问题: 对于迭代器来说,end应该是无效的,而我这介是有效的,并且产生一个问题那就是,我的数组里只能存n-1个值 因为最后一Read More →

[C/C++]一个指针数组的迭代器

2013-09-12
By: macgou
On: 2013年9月12日
In: C/C++, 程序设计
With: 0 Comments

今天用了一个指针数组的迭代器,感觉还不错,在这里重新写一份别的再排遣一下夜晚的寂寞,也当是个学习备份。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
// --------------------------------------------------------------------------
// 名称:ArrayIterator.cpp
// 说明:一个C指针数组的迭代器学习
// 环境:vs2008
// 时间:2013.9.12. 00:20
// 附加:写的有些乱,有的地方不太好或者有错误,只是为了学习,如果您看到了,欢迎批评指正
// --------------------------------------------------------------------------
 
 
#include "stdafx.h"
#include <iostream>
using namespace std;
 
// --------------------------------------------------------------------------
// 学生类
// --------------------------------------------------------------------------
 
class Student
{
public:
Student(int id)
:mID(id)
{
}
 
int GetID()
{
return mID;
}
private:
int mID;
};
 
 
// --------------------------------------------------------------------------
// 学生类的指针数组模板类
// 在这里定义指针数组的一个迭代器
// --------------------------------------------------------------------------
 
typedef Student* StudentPtr;
template<int NUM>
class StudentPtrList
{
public:
typedef StudentPtr* iterator;
typedef const StudentPtr * const_iterator;
iterator begin() { return &m_pStudent[0]; }
iterator end()
{
//@MARK 这里碰到个问题
if (m_CurCount == 0)
{
return &m_pStudent[0];
}
else
{
return &m_pStudent[m_CurCount - 1];
}
}
 
StudentPtrList()
:m_CurCount(0)
{
memset(m_pStudent, 0, sizeof(m_pStudent));
}
 
int GetCurCount() const {return m_CurCount;}
int GetMaxCount() const {return NUM;}
 
bool AddStudent(StudentPtr pStudent)
{
if (NULL == pStudent)
{
return false;
}
 
if (m_CurCount < NUM)
{
m_pStudent[m_CurCount++] = pStudent;
return true;
}
return false;
}
 
private:
StudentPtr m_pStudent[NUM];
int m_CurCount;
};
 
 
// --------------------------------------------------------------------------
// 打印好学生ID的函数
// 这里好像有些问题,只能打印好学生的,应该可以再重构一下,有谁我指正
// --------------------------------------------------------------------------
 
const int GOOD_NUM = 10;
typedef StudentPtrList<GOOD_NUM> GoodStudentList;
 
void PrintStudentID(GoodStudentList& rList)
{
GoodStudentList::iterator iter = rList.begin();
StudentPtr pStudent = NULL;
for (; iter != rList.end(); ++iter)
{
pStudent = *iter;
if (NULL == pStudent)
{
continue;
}
 
cout << "ID: " <<  pStudent->GetID() << "\n";
}
};
 
 
// --------------------------------------------------------------------------
// 一个存学生数据的池,从里面捞并初始化学生的数据
// --------------------------------------------------------------------------
 
const int MAX_STORE_NUM = 100;
struct StudenStore
{
StudenStore()
{
memset(m_pStudent, 0, sizeof(m_pStudent));
}
~StudenStore()
{
for(int i = 0; i < MAX_STORE_NUM; ++i)
{
if (m_pStudent[i])
{
delete m_pStudent[i];
}
}
}
 
void Init()
{
for(int i = 0; i < MAX_STORE_NUM; ++i)
{
m_pStudent[i] = new Student(i);
}
}
 
void GetGoodStudent(GoodStudentList& rList) const
{
int nCount = rList.GetMaxCount();
for (int i = 0; i < nCount; ++i)
{
rList.AddStudent(m_pStudent[i]);
}
}
 
private:
Student* m_pStudent[MAX_STORE_NUM];
};
 
 
// --------------------------------------------------------------------------
// 主函数测试
// 创建学生池,挑出好学生,打印好学生的ID
// --------------------------------------------------------------------------
 
int main(int argc, char* argv[])
{
StudenStore store;
store.Init();
 
GoodStudentList goodList;
store.GetGoodStudent(goodList);
 
PrintStudentID(goodList);
 
system("pause");
return 0;
}

关于Mark的解释 1.如果用 m_pSRead More →

[C++]Warning C4150小议

2013-07-16
By: macgou
On: 2013年7月16日
In: C/C++, 程序设计
With: 0 Comments

〇、开场 1.今天编译新项目的工程,遇到一个Warning C4150的警告,观察之,查之,原来如此。 2.夜深的时候,一觉醒来,就不想再睡了,人的心事,总是越想越复杂,越想越烦躁,不如简简单单的看几行代码。 Read More →

[C/C++][时间]time_t与struct tm转换

2013-03-02
By: macgou
On: 2013年3月2日
In: C/C++, 程序设计
With: 0 Comments

关键字 UTC(世界标准时间),Calendar Time(日历时间),epoch(时间点),clock tick(时钟计时单元)   一、概念 1.Coordinated Universal TimRead More →

[转][备][C++]VS2008环境下编译使用SGI STL

2012-04-22
By: macgou
On: 2012年4月22日
In: C/C++, 程序设计
With: 0 Comments

stlport据说是一位俄罗斯高人之作,目的就是为了让我们在多平台下可以使用高效的SGI STL,废话少说,先介绍下它的主页: http://sourceforge.net/projects/stlport/ Read More →

[C++]前置自增(自减)和后置自增(自减)

2011-12-23
By: macgou
On: 2011年12月23日
In: C/C++, 程序设计
With: 0 Comments

一、基本认识 2010年学习过的一点总结,今天没防看到,感觉还是不太完善,做事情,就一定要把它做好。不是追求完美,但一定要保持一颗保持进步的心。 二、重载和句法区别 C++规定后缀形式有一个int类型参数,当函Read More →

Linux静态库和动态库学习总结

2011-12-21
By: macgou
On: 2011年12月21日
In: Linux, 命令技巧, 基础知识
With: 0 Comments

一、废话 之前由于工作需要,要封装一个Linux加密解密转换的动态库,这个之前只做过Windows下面的,Linux下面还真没有做过,之后做了整一个晚上才算做好,不过其中也学到了不少东西,包括Linux下的动态Read More →

文章导航

1 2 … 6 下一个

标签

AppStore AssetBundle Business c C# c++ CentOS ChinaJoy design dynamics firefox ios linux lua mac MacBook Mac OS X markdown minimal mysql NGUI string ubnutu ubuntu Unity vc windows wordpress 博客 学习笔记 宏 工具 快捷键 批处理 插件 文件 服务器 桌面 游戏 游戏开发 热更新 程序 程序设计 笔试 软件

分类目录

  • Accessories (1)
  • Business (7)
  • C/C++ (63)
  • c# (19)
  • company (3)
  • Fashion Event (1)
  • iOS (12)
  • Linux (74)
  • Lua (8)
  • MacBook (18)
  • MySQL (12)
  • news (5)
  • NGUI (9)
  • Node.js (1)
  • Photography (6)
  • Python (4)
  • services (5)
  • Shell (2)
  • Ubuntu桌面 (47)
  • UGUI (3)
  • Unity (59)
  • VC/MFC (15)
  • vim (3)
  • vim系列 (3)
  • web design (4)
  • Window (24)
  • Wordpress (28)
  • Workplace (3)
  • 主题/插件 (8)
  • 云主机 (3)
  • 使用技巧 (12)
  • 其它技术 (18)
  • 功能定制 (1)
  • 博客建设 (10)
  • 听谁唱歌 (2)
  • 命令技巧 (12)
  • 善用佳软 (34)
  • 图片 (1)
  • 基础知识 (24)
  • 学习专题 (2)
  • 客户端 (30)
  • 平台技巧 (22)
  • 我爱摇滚 (1)
  • 批处理 (2)
  • 旅行 (7)
  • 服务器开发 (9)
  • 未分类 (22)
  • 未分类 (1)
  • 游戏开发 (66)
  • 游戏设计 (4)
  • 玩转vim (2)
  • 电脑应用 (53)
  • 知识积累 (7)
  • 程序人生 (8)
  • 程序设计 (101)
  • 算法/逻辑 (2)
  • 算法技巧 (10)
  • 美术 (1)
  • 读书频道 (2)
  • 课外知识 (4)
  • 面向对象 (2)

文章归档

  • 2018年十月 (4)
  • 2018年三月 (3)
  • 2017年十一月 (2)
  • 2017年十月 (2)
  • 2017年九月 (3)
  • 2017年八月 (3)
  • 2017年七月 (7)
  • 2017年五月 (2)
  • 2017年四月 (4)
  • 2017年三月 (13)
  • 2017年一月 (12)
  • 2016年十二月 (6)
  • 2016年十一月 (1)
  • 2016年十月 (4)
  • 2016年九月 (9)
  • 2016年八月 (5)
  • 2016年七月 (13)
  • 2016年四月 (5)
  • 2016年三月 (8)
  • 2016年二月 (1)
  • 2016年一月 (1)
  • 2015年十二月 (19)
  • 2015年十一月 (23)
  • 2015年十月 (1)
  • 2015年九月 (8)
  • 2015年七月 (1)
  • 2015年二月 (2)
  • 2015年一月 (17)
  • 2014年九月 (1)
  • 2013年十一月 (2)
  • 2013年十月 (2)
  • 2013年九月 (17)
  • 2013年八月 (3)
  • 2013年七月 (4)
  • 2013年六月 (1)
  • 2013年三月 (4)
  • 2012年十月 (1)
  • 2012年七月 (2)
  • 2012年五月 (1)
  • 2012年四月 (3)
  • 2012年二月 (4)
  • 2012年一月 (4)
  • 2011年十二月 (7)
  • 2011年十一月 (4)
  • 2011年九月 (1)
  • 2011年八月 (24)
  • 2011年五月 (1)
  • 2011年四月 (2)
  • 2011年三月 (3)
  • 2011年二月 (1)
  • 2011年一月 (4)
  • 2010年十二月 (2)
  • 2010年十一月 (2)
  • 2010年十月 (1)
  • 2010年九月 (7)
  • 2010年七月 (5)
  • 2010年六月 (1)
  • 2010年五月 (4)
  • 2010年四月 (7)
  • 2010年三月 (5)
  • 2010年一月 (2)
  • 2009年十二月 (10)
  • 2009年十一月 (9)
  • 2009年九月 (1)
  • 2009年七月 (5)
  • 2009年二月 (5)
  • 2009年一月 (2)
  • 2008年十一月 (1)
  • 2008年十月 (1)
  • 2008年九月 (4)
  • 2008年八月 (1)
  • 2008年七月 (1)
  • 2008年六月 (3)
  • 2008年五月 (1)
  • 2008年四月 (5)
  • 2007年十二月 (3)
  • 2007年十一月 (1)
  • 2007年十月 (12)
  • 2007年九月 (10)
  • 2007年八月 (4)
  • 2007年七月 (6)
  • 2007年六月 (2)
  • 2007年五月 (3)
  • 2007年三月 (2)

分类目录

  • Accessories (1)
  • Business (7)
  • C/C++ (63)
  • c# (19)
  • company (3)
  • Fashion Event (1)
  • iOS (12)
  • Linux (74)
  • Lua (8)
  • MacBook (18)
  • MySQL (12)
  • news (5)
  • NGUI (9)
  • Node.js (1)
  • Photography (6)
  • Python (4)
  • services (5)
  • Shell (2)
  • Ubuntu桌面 (47)
  • UGUI (3)
  • Unity (59)
  • VC/MFC (15)
  • vim (3)
  • vim系列 (3)
  • web design (4)
  • Window (24)
  • Wordpress (28)
  • Workplace (3)
  • 主题/插件 (8)
  • 云主机 (3)
  • 使用技巧 (12)
  • 其它技术 (18)
  • 功能定制 (1)
  • 博客建设 (10)
  • 听谁唱歌 (2)
  • 命令技巧 (12)
  • 善用佳软 (34)
  • 图片 (1)
  • 基础知识 (24)
  • 学习专题 (2)
  • 客户端 (30)
  • 平台技巧 (22)
  • 我爱摇滚 (1)
  • 批处理 (2)
  • 旅行 (7)
  • 服务器开发 (9)
  • 未分类 (22)
  • 未分类 (1)
  • 游戏开发 (66)
  • 游戏设计 (4)
  • 玩转vim (2)
  • 电脑应用 (53)
  • 知识积累 (7)
  • 程序人生 (8)
  • 程序设计 (101)
  • 算法/逻辑 (2)
  • 算法技巧 (10)
  • 美术 (1)
  • 读书频道 (2)
  • 课外知识 (4)
  • 面向对象 (2)

标签

AppStore AssetBundle Business c C# c++ CentOS ChinaJoy design dynamics firefox ios linux lua mac MacBook Mac OS X markdown minimal mysql NGUI string ubnutu ubuntu Unity vc windows wordpress 博客 学习笔记 宏 工具 快捷键 批处理 插件 文件 服务器 桌面 游戏 游戏开发 热更新 程序 程序设计 笔试 软件

近期评论

  • 果冻想发表在《mysql禁用日志文件mysql-bin.000001等》
  • br发表在《桌面爱淘宝删除不掉AppDataRoamingatbaitaobao.exe》
  • 包子发表在《wordpress分页插件WP-PageNavi的安装和配置》
  • 叶天冬seo博客发表在《wordpress插件wp-cumulus支持中文标签》
  • 人才招聘发表在《用word写WordPress文章》

Designed using Responsive Brix WordPress Theme. Powered by WordPress.