上一页 1 2 3 4 5 6 7 8 ··· 21 下一页
摘要: 这是篇引用百度文库的文章,对构造函数初始化列表写的很清楚。C++成员初始化列表下面有三篇文章 对初始化列表的讲解很清楚:一,C++为类中提供类成员的初始化列表类对象的构造顺序是这样的:1.分配内存,调用构造函数时,隐式/显示的初始化各数据成员2.进入构造函数后在构造函数中执行一般计算使用初始化列表有两个原因:1.必须这样做: 如果我们有一个类成员,它本身是一个类或者是一个结构,而且这个成员它只有一个带参数的构造函数,而没有默认构造函数,这时要对这个类成员进行初始化,就必须调用这个类成员的带参数的构造函数,如果没有初始化列表,那么他将无法完成第一步,就会报错。classABC...{public 阅读全文
posted @ 2010-12-21 17:59 pjh123 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 数据库的完整性,是设计数据库的基本要求。 阅读全文
posted @ 2010-12-18 10:43 pjh123 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 一、关于Invoke和BeginInvoke 有一篇文章说通过BeginInvoke给线程函数传参数,如下class ThreadOperation { public delegate void myDelegate(int count, string str); public void StartThread() { myDelegate dele = new myDelegate(Func2); dele.BeginInvoke(1, "test"); } public void Func2(int count, string str) { Console.WriteLine(string 阅读全文
posted @ 2010-12-16 17:39 pjh123 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 创建线程,并传递参数的方法:方法一: 使用Thread类的 public Thread (ThreadStart start)构造函数; 举例:(参考MSDN) class Test{ static void Main() { Thread newThread = new Thread(new ThreadStart(Work.DoWork)); newThread.Start(); }}class Work { Work() {} //这里可以自己定义线程执行函数需要的参数 public static void DoWork() {}}这种方法的特点是,不直接给线程函数传递参数,而是通过 阅读全文
posted @ 2010-12-16 17:38 pjh123 阅读(953) 评论(0) 推荐(0) 编辑
摘要: 1、如何快速输出 在C#的winForm程序中,使用Console,可以快速的在output窗口中输出信息; 同样,在VC++中,也可以输出,不过不是Console,也不是cout,而是OutputDebugString()函数 阅读全文
posted @ 2010-12-15 09:37 pjh123 阅读(120) 评论(0) 推荐(0) 编辑
摘要: decimal:从-10^38到10^38-1的定精度与有效位数的数字 numeric:decimal的同义词 怎么理解Numberic类型呢? Decimal数据类型,语法为:Decimal(P,S),P为精度,s为数字的小数位数DECIMAL数据类型可以提供小数所需要的实际存储空间,但也有一定的限制。您可以用2 到17 个字节来存储从-1038-1 到1038-1 之间的数值(这句话不知道什么意思?),可将其写为DECIMAL[p ,s]的形式,p 和s 确定了精确的比例和数位。其中p 表示可供存储的值的总位数,不包括小数点,缺省值为18。 s 表示小数点后的位数,缺省值为0。 例如dec 阅读全文
posted @ 2010-12-14 18:06 pjh123 阅读(625) 评论(0) 推荐(0) 编辑
摘要: 1、在32位windows系统下C++中,float类型占4个字节,double 类型占8个字节;int型也是占4个字节。2、但是发现在Sqlserver中,没有double类型,只有real和float,查找资料可以看到:float:从-1.79E+308到1.79E+308可变精度的数字 real:从-3.04E+38到3.04E+38可变精度的数字 所以real型,其实就是C++中的float,占4个字节;而Sqlserver中的float,其实等于C++中的double,占8个字节。3、那么float到底是怎么计算的呢? 符号位指数位 尾数位float32位中, 1位符号位,8位指数位 阅读全文
posted @ 2010-12-14 17:58 pjh123 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 各数据类型所占尾数,以及取值范围:bit: 1位: 0或1的整型数字 int: 4个字节:从-2^31(-2,147,483,648)到2^31(2,147,483,647)的整型数字 smallint: 2个字节:从-2^15(-32,768)到2^15(32,767)的整型数字 tinyint: 1个字节:从0到255的整型数字 decimal: 可变,2 到17 个字节:从-10^38到10^38-1的定精度与有效位数的数字 numeric: decimal的同义词money: 从-2^63(-922,337,203,685,477.5808)到2^63-1(922,337,203,68 阅读全文
posted @ 2010-12-14 17:47 pjh123 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 所谓的预编译头就是把一个工程中的那一部分代码,预先编译好放在一个文件里(通常是以.pch为扩展名的),这个文件就称为预编译头文件这些预先编译好的代码可以是任何的C/C++代码--------甚至是inline的函数,但是必须是稳定的,在工程开发的过程中不会被经常改变。如果这些代码被修改,则需要重新编译生成预编译头文件。注意生成预编译头文件是很耗时间的。同时你得注意预编译头文件通常很大,通常有6-7M大。注意及时清理那些没有用的预编译头文件。也许你会问:现在的编译器都有Time stamp的功能,编译器在编译整个工程的时候,它只会编译那些经过修改的文件,而不会去编译那些从上次编译过,到现在没有被 阅读全文
posted @ 2010-12-08 17:19 pjh123 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 一、整体1、项目或模块开发,总是呈现一种迭代性的行为。在最开始,不可能会考虑的面面俱到。但是绝对不要在初期设置太多的临时性代码,比如设定一个硬编码、设定一个临时函数等等,然后期望到后期再改回来。这往往毁于两种情况的:1、后期还有很多时间进行代码ReView,这太理想了;2、当代码庞大到一定程度后,也许你自己都不知道当时为什么设置这些个东西了。 所以最好从一开始就宁可多花费时间,将代码写完整,不要偷懒。 如果中途发生了迭代,导致前期的代码结构不合理,不能因为打算节省时间而不舍得改动以前的构架,其结果是虽然此时省事了,但往后面需求再改动、再改动...,到一定程度后,即时你想改也改不了了。2、日志一 阅读全文
posted @ 2010-12-03 18:19 pjh123 阅读(246) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 21 下一页