`
linshenqi
  • 浏览: 33914 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
文章列表
1.纯虚函数声明如下: virtual ReturnType FunctionName(Parameter)=0; 纯虚函数一定没有定义,纯虚函数用来规范派生类的行为,即接口。包含纯虚函数 的类是抽象类,抽象类不能定义实例,但可以声明指向实现该抽象类的具体类的指针或 ...
abstract class Door { abstract void open(); abstract void close(); } interface Alarm { void alarm(); } class AlarmDoor extends Door implements Alarm { void open() { … } void close() { … } void alarm() { … } } 抽象->对象 接口->组件(应用) 某个抽象实现一个接口(一些功能)生成一个对象。
下完后复制到gdb下的bin目录即可。
  在网上搜了很多资料,多说java没有引用传递,只有值传递。后来发现可以使用StringBuffer变相实现。 void strAppend(StringBuffer str){ str.Append("world"); } public static void main(String args[]){ StringBuffer str = new StringBuffer("hello"); strAppend(str); System.out.println("str=" + str); } ...
HKYE_CURRENT_USER\Control Panel\Mouse SmoothMouseXCurve=hex: 00,00,00,00,00,00,00,00, 00,a0,00,00,00,00,00,00, 00,40,01,00,00,00,00,00, 00,80,02,00,00,00,00,00, 00,00,05,00,00,00,00,00 SmoothMouseYCurve=hex: 00,00,00,00,00,00,00,00, 66,a6,02,00,00,00,00,00, cd,4c,05,00,00,00,00,00, a0,99, ...
#include <winsock2.h> //1.用于连接的socket SOCKET sockClient; //2.初始化socket WSAData wsaData; WSAStartup(MAKEWORD(2, 2), &wsaData); //3.设置socket sockClient = socket(AF_INET, SOCK_STREAM, 0); //TCP,字节流 //4.设置连接信息 sockaddr_in address; address.sin_add ...
    c/c++中使用缓冲可以提高系统效率,避免在数据交互时出现死锁等问题。尤其是在网络编程中,当协议结构比较复杂,牵扯到的数据结构比较多的时候,用缓冲可以提高程序运行效率。尤其是结构体,一般的处理方法就是针对不同的结构体编写不同的处理函数。不过在c语言中不支持oo的情况下,实现不了多态,难免降低效率。这时可以把相应的结构体转化为缓冲字节流,然后根据结构体(协议)定义做相应的处理,等于是变相的在c语言中实现了多态。 一个例子: unsigned char *buf; tagText *text = (tagText *)malloc(sizeof(tagText)); mems ...
windows下适当的使用多线程能增加程序运行效率,不过winapi自带的线程接口函数直接调用多了可能会有点乱,所以我对其进行了2次封装,增加了oo特性。 编译后生成ThreadManager.lib,ThreadManager.dll以供调用。 ThreadManager.h #pragma once #include<windows.h> #include<map> #include<vector> #include"Common.h" #define ACTIVED 0x0000 #define STOPP ...
这个东东就是对 win32api中的dll调用接口进行了2次封装,增加了面向对象特性。 本人水平一般,见笑了。 开发环境:winxp sp3 + vs2008 DynamicDllManager.h /*--------------------------------------------------------------------------------------- 文件: DynamicDllManager.h 创建日期: 2010.1.12 作者: linshenqi 描述: 该类是一个动态dll加载管理器,编译后生成DynamicDllM ...
sqlserver2008 获取所有字段: select column_name from information_schema.columns where table_name='表名' 获取表中字段个数: select count(name) from syscolumns where id=object_id('表名')

java的单态实现

    博客分类:
  • JAVA
public class Singleton { //唯一接口实例 private static Singleton instanse; //单态,接口调用方式:Singleton xxx = Singleton.getInstance(); public static Singleton getInstance(){ if(instanse == null){ try{ instanse = new Singleton(); }catch(java.lang.OutOfMemoryError err){ Syste ...
     其实关于这个问题网上给出了很多解决方法,大致就是sqlite原生不支持中文路径,需要对中文进行utf-8编码后方可支持。但网上的方法都是针对sqlite的,对于CppSqlite却没有提及。       我曾试过在CppSqlite中,先对路径进行编码,再打开数据库,但依然无法识别。后来发现自己疏忽大意了,无论在CppSqlite中怎么编码,一旦把这个路径字符串传到sqlite中依然是没有编码的字符串,所以应该在底层的sqlite中编码而不是CppSqlite中。 具体方案如下: 1.打开CppSQLite3.h文件,找到class CppSQLite3DB,在public中声明两个 ...
     SQLite是一个超轻量级的开源数据库,从官网上下载的source是一个用c写的文件,在C++(VC)中调用时难免会碰到一些问题,这时就可使用CppSQLite。       CppSQLite(最近版本为CppSQLite3)是对SQLite进行二次封装后的C++类库,可从此处下载获得http://lupaworld.com/action-download-itemid-2892.html。下载有其中包含三个demo和一个common文件夹。其中common中的CppSQLite3.cpp和CppSQLite3.h就是我们在程序中可以用到的类库,sqlite3.dll是必备的运行库, ...
老样子,有问题请参照nehe的opengl教程。 OpenGL中基本纹理过滤方式大致有三种,分别是NEAREST,LINEAR和Mipmapping,纹理质量依次递增。由于代码重复,这里就提一下设置过滤方式。 glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_NEAREST); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR_ ...
搞OpenGL好几天了,现在开始写点东西。有问题请参考nehe的opengl教程。 1.载入纹理图片 FILE *File; File=fopen(Filename,"r"); //打开纹理图片,Filename为文件路径 2.设置纹理 AUX_RGBImageRec *TextureImage[1]; //定义缓存 memset(TextureImage,0,sizeof(void *)*1); //分配空间 if(TextureImage[0] = &auxDIBImageLoad(Filename)) //载入纹理成功 { ...
Global site tag (gtag.js) - Google Analytics