• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
wnarutou
博客园 | 首页 | 新随笔 | 新文章 | 联系 | 订阅 订阅 | 管理
上一页 1 2 3 下一页

2012年12月25日

#pragma comment(linker, "/ENTRY:print")
摘要: 分享一个网上来的代码 1 #include<stdio.h> 2 #include<stdlib.h> 3 4 void print() 5 { 6 #pragma comment(linker, "/ENTRY:print") 7 printf("hello, world\n"); 8 } 9 10 int main(int argc, char *argv[])11 {12 }把入口点函数设为了print函数,不进入main函数了。 阅读全文
posted @ 2012-12-25 22:11 wnarutou 阅读(287) 评论(1) 推荐(0)
 
 

2012年11月19日

c++注意
摘要: 1.内置类型变量是否初始化取决于变量定义的位置,在函数体外定义的变量都初始化为0,在函数体内定义的内置类型变量不能自动初始化,类的话都会自动调用构造函数。2.C++也可以有嵌套类。3.const修饰一个类对象可以不用初始化,它会自动调用构造函数进行初始化,而int等就不行。如:1 const A a; // 会自动调用构造函数对a进行初始化2 // const int i; // 这里将出错,必须像下面这样初始化3 const int i = 2;4.可以直接显示调用构造函数 类名(); 来创建一个临时类对象,如:1 class A{2 A() {}3 A operator() (){}4.. 阅读全文
posted @ 2012-11-19 23:15 wnarutou 阅读(176) 评论(0) 推荐(0)
 
VS相关
摘要: 1.程序要编译成Unicode版本可以在”项目属性->配置属性->常规->项目默认值->字符集“设置,如果选择“使用多字节字符集”则不是Unicode版本,若选择“使用Unicode字符集”则编译出来的为Unicode版本。 阅读全文
posted @ 2012-11-19 23:08 wnarutou 阅读(181) 评论(0) 推荐(0)
 
第一个duilib程序--HelloWorld
摘要: duilib是一个windows下的皮肤库,用win32写的。。。先看个效果图吧:这个图片里有源代码,右键保存下图标,把后缀改为zip,即可。由于skin目录下的图片不便上传,需要自己加入合适的图片。要使用duilib库,必须先把库导入,代码如下: 1 #include "xxx\UIlib.h" //xxx为UIlib.h的路径 2 using namespace Duilib; //Duilib为库自定义的名字空间 3 4 #ifdef _DEBUG 5 #ifdef _UNICODE 6 #pragma comment(lib, "xxx\Duilib_ud 阅读全文
posted @ 2012-11-19 23:00 wnarutou 阅读(6267) 评论(11) 推荐(2)
 
 

2012年10月21日

static与extern
摘要: 在文件1中用extern定义一个变量,标明这个变量可以被其他文件应用,并且其他文件不需要使用#include "文件1";来包含文件1直接通过extern声明一下那个变量即可使用。extern的作用范围为整个程序,而生命周期为直到程序结束。static的作用范围只在定义它的范围内,而生命周期和extern一样。static和extern是两种存储类别,其他的存储类别还有auto和register,auto为默认的存储类别。因为作用范围不一样,所以不能同时使用extern和static修饰一个变量,否则就有二义性了。 阅读全文
posted @ 2012-10-21 23:33 wnarutou 阅读(173) 评论(0) 推荐(0)
 
在窗口客户区移动窗口
摘要: 如果像通过窗口的客户区移动鼠标,而不只是在标题栏的话。那么我们可以依照这种思路来实现:处理客户区鼠标左键消息WM_LBUTTONDOWN,在这里面记录鼠标的位置,然后捕获WM_MOUSEMOVE消息,在它里面处理鼠标的位移量,并通过MoveWindow或SetWindowPos来移动窗口。上面的处理方式效果还是不错的,就是比较麻烦,其实我们可以在鼠标左键客户区的时候发送一条WM_NCLBUTTONDOWN给窗口,这条消息的wParam为HTCAPTION表示击中标题栏,这样就会让窗口以为你现在的操作是左键击中标题栏,就像你真正在标题栏上点击了左键一般。如此系统自然而然为你提供了移动窗口的服务了 阅读全文
posted @ 2012-10-21 23:02 wnarutou 阅读(405) 评论(0) 推荐(0)
 
使用分层窗口及透明png图片实现一个异形窗口
摘要: 搞Windows程序的人尽皆知分层窗口能够实现很多不错的效果,之前看过一些异形窗口的实现,所以就手痒也想自己搞一个玩一玩。自己动手实现过程才发现还是有不少问题的。基本思路是:1.将窗口扩展属性设置为分层属性WS_EX_LAYERED。2.选一张透明的png图片,并将其加载进来。3.创建与窗口兼容的内存设备上下文,以及兼容位图,将兼容位图选入兼容设备上下文。4.将png图片绘制到内存设备上下文中。5.设置BLENDFUNCTION结构,调用UpdateLayeredWindow。第一步设置窗口的分层属性比较简单:windowStyle = GetWindowLong(hWnd, GWL_EXST 阅读全文
posted @ 2012-10-21 21:43 wnarutou 阅读(2791) 评论(2) 推荐(1)
 
关于窗口属性的小应用
摘要: 1.基本上所有程序打开主界面都会在任务栏出现一个代表本窗口界面的图标,但是有一些却没有出现在任务栏,那么要怎么实现呢?这个只要在创建窗口的时候调用CreateWindowEx函数并使用WS_EX_TOOLWINDOW扩展属性即可。2.在xp系统下,窗口右边及下边是没有阴影效果,这样表现立体感就不强。可以通过这样来实现窗口阴影效果:::SetClassLong(*this, GCL_STYLE, ::GetClassLong(*this, GCL_STYLE) | CS_DROPSHADOW);3.如果你想要固定窗口的尺寸,不想让用户双击最大化以及禁用最大化图标,那么你可以:cs.style&a 阅读全文
posted @ 2012-10-21 01:32 wnarutou 阅读(422) 评论(0) 推荐(0)
 
关于类大小的小试验
摘要: 首先:#include <iostream>using namespace std;class A{public: void foo(){}};class B:public A{public: void foo(){}};class C:public A{public: void foo(){}};class D: public B,public C{public: void foo(){}};int main(int argc, char *argv[]){ A a; B b; C c; D d; cout<<"A 的大小为: "<<s 阅读全文
posted @ 2012-10-21 00:31 wnarutou 阅读(154) 评论(0) 推荐(0)
 
2013搜狗校园招聘笔试题
摘要: 研习了Linux公社发布的2013搜狗校园招聘笔试题,还是有些收获的。//第一题:以下程序的输出是___________________class Base{public: Base(int j):i(j){} virtual ~Base(){} void func1(){i *= 10; func2();} int getValue(){return i;}protected: virtual void func2(){i++;}protected: int i;};class Child:public Base{public: Child(int j):Base(j){} void fun 阅读全文
posted @ 2012-10-21 00:08 wnarutou 阅读(269) 评论(0) 推荐(0)
 
 
上一页 1 2 3 下一页

公告


博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3