- 博客(30)
- 资源 (1)
- 收藏
- 关注
原创 Graal compiler模块编译
背景学习《深入理解Java虚拟机》第三版11.5节。目标想要按照书上的流程走一遍,本地验证代码运行结果。环境准备书上没有介绍具体的Graal、Python版本,感觉是比较早的版本,由于缺失版本信息,导致我最开始操作的时候遇到了一些坑。我尝试过Python 2.7.18/3.9.5 + OpenJDK 11/12 + Graal 20.3,失败了,经过搜索资料,找到了一个可以成功的版本列表[1]。Python 2.7.18Graal release/graal-vm/19.3mx 5.247
2022-04-06 23:06:31 881
原创 openjdk12 hsdis windows构建
背景为了体验《深入理解Java虚拟机》第三版里面提到的的hsdis反编译工具。目标在之前编译OpenJDK 12的基础上构建适用Windows平台的hsdis工具,即hsdis.dll(备注:实际名称带有架构信息,比如64位版本的hsdis-amd64.dll,32位版本的hsdis-i386.dll)。环境准备OpenJDK 12源码选择以下任一方法,使用Mercurial clone源码,hg clone http://hg.openjdk.java.net/jdk/jdk下载
2022-03-26 09:11:05 313
原创 Windows 11,cygwin + Visual Studio 2017编译OpenJDK12
背景因为最近在看《深入理解Java虚拟机 JVM高级特性与最佳实践》,书上介绍了jdk编译的方法,所以进行实践。目标编译在Windows 11上运行的x64版本OpenJDK 12。环境准备系统我的系统是Windows 11,源码中的build.html中对Windows的说明是高于Windows XP的应该都能构建。Windows XP is not a supported platform, but all newer Windows should be able to build the
2022-01-23 22:25:17 2378
翻译 译:co_await(动词)协程(Co_awaiting Coroutines)
原文:https://blog.panicsoftware.com/co_awaiting-coroutines/原作者: Dawid Pilarski系列文章第一篇 Coroutine Introduction 原文,译文系列文章第二篇 Your First coroutine 原文,译文co_await 协程你在等下一篇关于协程的博客吗?在休息了这么久之后,终于来了。首先,如果你正在读这篇博客,我假设你已经熟悉协程的介绍以及promise类型的描述了,因为这是关于协程的博客系列的延续。至少
2020-12-09 20:58:49 943 1
翻译 译:你的第一个协程程序(Your first coroutine)
原文:https://blog.panicsoftware.com/your-first-coroutine/原作者: Dawid Pilarski系列文章第一篇 Coroutine Introduction 原文,译文你的第一个协程程序当你熟悉了协程的介绍,我认为是时候实现你的第一个协程了。本文关注理解怎样实现协程和相关实体类(特别是promise_type)。在我们开始冒险前,请确保你的编译器支持协程特性(在写这篇博文之前,GCC还不完全支持协程,我建议用clang或msvc,本文中的例子用c
2020-12-09 20:48:35 653
原创 调用MessageBox会再次进入消息循环
昨天调试程序,发现程序在Debug与Release下的运行结果不一致,原因是,在Debug下,断言失败弹出消息框。出现这个问题的时候,请教了一下我师傅(同事),他让我取消断言试试。后来查看了一下断言内的代码,发现在MessageBox处执行下一步时,程序会跑到其他的地方。查了写资料,结合程序的堆栈信息,确认MsgBox会使程序重新进入消息循环。MSDN上MessageBox的说明貌似并没有提到这一点
2017-08-22 23:30:40 944
翻译 Dynamic-Link Library Best Practices(动态链接库最佳实践)
原文链接创建DLL给开发者呈现了很多挑战。DLL没有系统强制(system-enforced)的版本(versioning)。当系统中存在多个版本的DLL时,容易被覆盖加上缺少版本模式,产生了依赖和API冲突。开发环境、加载器(loader)实现以及DLL依赖的复杂度已经创建了加载顺序和应用程序行为的脆弱(fragility)。近来,许多程序依赖DLL,且拥有许多复杂的依赖,以致程序必须重视才能正确
2017-08-06 17:38:23 483
原创 强制改变const变量的结果
暂时想到两种用法,结果有不同。//第一种int x = 5 ;const int cX1 = x ;int *pY = const_cast<int *> (&cX1) ;*pY = 7 ;int z = *X1 ; //z = 7;反汇编中取x的值,然后赋值给z//第二种const int cX2 = 5 ;pY = const_cast<int *> (&cX2) ;*pY
2016-10-16 16:51:18 429
原创 Notepad++ HexEditor的小改进
平时一直在用Notepad++的hexEditor插件来做一些16进制的编辑,不过插件有一些bug,比如从后向前选择文本时,复制内容有问题,而且这个插件好像没有在更新了。所以为了方面以后的编辑,我下了插件的源码,然后做了些修改。 主要做了下面修改: 1.无论从后往前选择还是从前往前选择文本,都能够复制16进制内容。 2.del和back键都能够
2016-05-08 20:02:42 3086
原创 OGRE学习记录-自阴影
OGRE的wiki上提供一个deep shadow mapping的实现,链接。 这里记录一下各个着色器作用和注意的地方。 casterVP,作用是把顶点坐标转换到纹理坐标和输出顶点深度值。传入的变换矩阵是worldviewproj_matrix,这应该是世界矩阵到正在投射阴影的灯光空间的变换矩阵,目前不知道如何获取灯光的viewproj矩阵,但肯定不是摄像机的
2015-09-08 19:50:23 906
原创 OGRE学习记录-Dot3Bump例子
这里主要是记录一下理解Examples/BumpMapping/MultiLight的过程。 材质有1个technique,technique内有3个pass。这是一种叫做Additive light masking的技术,使用这种技术可以使光照更加真实,OGRE手册里面有关于它的介绍。 我一开始对这三个pass的作用并不清楚,所以分别查看了仅仅使用其中一个pa
2015-09-02 20:18:20 637
原创 初次使用Source Navigator
最近一直在看导师之前提的Vega Prime的文档,虽然Vega自带的html文档可以查询类和方法信息,但是因为数量太多,看着感觉好混乱。然后今天突然想到要找一个分析源码(可以只有头文件)的工具,就找到了Source Navigator工具。SourceNav可以将分析项目代码,生成类,方法等列表,代码层次结构和方法,变量引用关系。 百度上可以直接找到SourceNav的主页,它
2015-04-20 00:01:09 6265
转载 WP toolkit本地化
原文:http://www.kuandaicesu.com/xinwenzhongxin/wangluojishu/517.html 在使用DateTimeConverter的时候,发现转换后的时间为英文,通过原文方法可以使转换后的信息本地化。 1.修改工程修改工程的AssemblyInfo.cs文件,将[assembly: NeutralResourcesLanguageAt
2015-03-26 08:47:25 462
原创 VC 6.0 PostMeessage错误
最近在帮老师写一个MFC程序,用VC6开发,前几天在运行的时候,发现一个错误,特此记录一次。 程序中有个按钮,点击按钮会给调用PostMessage给主窗口发送自定义消息,在Release模式下,连续点击就会出现异常,查看了PostMessage函数的介绍,其中也并没有说明类似的问题,后来在Bing上找到了一个解决方法。点击打开链接 因为我在声明自定义消息处理函
2015-01-16 23:14:44 660
原创 Windows Phone自定义控件
这段时间,边复习考研,边学习Windows Phone开发。第一个控件(亲测):很早以前,我就对新浪微博的下拉刷新滚动控件(ScrollViewer)感到好奇,一直在想它是怎么实现的,因为WP自带的ScrollViewer并没有拖到顶部或底部的事件,而且当ScrollViewer的ManipulationMode为System的时候,不能获取到ScrollViewer滚动条的位置。于是,我
2013-09-08 00:27:03 1076
原创 VS2012配置Qt5.1.0环境心得体会
搞了一天半,总共编译了3次Qt,太伤了,不过总算弄好了。参考一些文章,还有论坛,如下:http://blog.csdn.net/l1258914199/article/details/9031567http://bbs.csdn.net/topics/380072935http://blog.csdn.net/vitoaaazzz/article/details/86787
2013-07-10 17:00:51 3219 7
原创 c++ 带验证码的模拟网页登录
之前就想搞这个东西,但是一直拖着,直到今早才弄好。因为登录学校的新系统需要验证码了,所以原来查询信息的登录部分需要做修改,但用的是c++。同样是用socket获取网页的源码,但是多了个验证码,并且验证码的那个img标签,src是一个固定的地址,然后直接输入那个src,每次图片都不一样。(原来我想得太简单了,我觉得虽然是随机生成,但是图片应该是同一个src。事实证明我错了,又长见识了)回
2013-06-29 12:38:28 2737 2
原创 最近动态2
不知道起什么标题,又因为之前写过一个最近动态,所以就叫做最近动态2了好久没写博客了,也确实是因为最近一直没有在做东西,所以不知道写些什么。这学期大三下了,这个学期,到目前为止,有两个东西已经做成了成品,一个是被老师找去做的评分系统,另一个就是Windows Phone上的一个校园信息查询应用(目前只有几个功能,而且仅限我们学校)。第一个系统,首先,也是最直接让我学到的东西就是MFC的简单应
2013-04-04 22:08:35 706
原创 Qt中的拖放问题
昨天在看书的时候,对两行代码不理解(在《C++ GUI Qt4编程》9.1 使拖放生效 里面的第二个例子里面的dragMoveEvent方法中),因为那两行代码留下或者注释,编译出来的程序运行状况是一样的。event->setDropAction (Qt::MoveAction) ;event->accept () ; 开始在论坛提问,没人甩我,群里问,又没人甩我,我就开始
2012-11-11 20:41:32 2337 1
原创 问题解决笔记(全局变量,MFC关联变量)
我遇到过好几次这样的问题了,就是在一个头文件中定义了一个全局变量,在一个文件中使用的时候,可以正确地赋值,修改。但是在另一个头文件中使用的时候,这个全局变量貌似就初始化了,如string变量就变为"",int变量就变成0。后来百度了一下,才发现static只能对本文件内的使用保存值,而当别的文件使用的时候,原来文件里面值是访问不到的,所以就出现了类似初始化的行为。如果想要让其他文件共享这个全局变量
2012-10-22 19:31:07 1057
原创 vs2010环境 c++ 使用htmlcxx解析html
因为最近在弄一个获取课表的程序,课表的内容来自教务系统网站,所以需要解析html。然后我就在网上搜索”c++解析html“,然后就找到了htmlcxx这个开源库,下载下来,发现不会使用它,然后又在网站上搜索相关资料。最后找到一个博客(http://www.cnblogs.com/zhanglanyun/),然后用email联系了他,解决了问题,很感谢他!接着说如何使用(作为参考,可能在别人的电
2012-10-14 21:52:31 5393 9
原创 c++运用socket获取网页源代码以及strcat与strcat_s的小差别
最近在学习用Socket套接字方法获取网页源代码,需要发送GET请求,然后通过recv接收,先把代码贴上(也可以供以后参考)。工程不适用unicode。//测试socket连接网络//获取网页源代码#include //设置区域需要#include #include #include #pragma comment (lib, "ws2_32.lib"
2012-09-18 14:18:43 2789 1
原创 读《C专家编程》笔记1
最近忙着考试,都在复习,所以很少有时间写文章记录一下。 昨天去图书馆借了几本书,其中有一本叫《C专家编程》。看了一点,发现书中举出的例子很微妙,平时真的没有发现,所以截图上来,做个笔记。 看到结果,真的是很吃惊,这是因为不同类型作比较的时候,需要进行类型转换,书上说“if语句在signed int 和unsigned int 之间测试相等性,所
2012-06-19 08:50:56 656
原创 wchar_t与char(系统默认编码集,非UTF8)的转换
最近开始看孙鑫老师的c++视频,在跟着视频做东西的时候,碰到了这个问题,视频中应该没有定义UNICODE,所以它里面的字符串就是简单用" "就行了,但是我在自己电脑上编译时,就碰到了问题,就因为创建工程的时候包含了UNICODE定义,所以就必须对TCHAR和char进行转换。我在网上找到了一些解决方法,我在blog上记录下,以便以后使用。至于函数中的参数我就不说了,可以到MSDN上查。首先
2012-04-29 12:30:33 2694 1
原创 Apache2.2,php5.4,MySQL5.5的配置
我那游戏终于弄完了,等到出结果之后,我再将代码放出,希望收到些建议。然后最近打算学习c与数据库的使用,我选择的是MySQL数据库,然后说说我配置的心得。网上也有许多教程,但是我觉得有些东西没说上,我自己补充一下,仅供参考。在设置PHPIniDir的时候要注意,如果你的php文件夹位置含有空格符,那么请你把位置用引号括起来。接着设置php,进入php的文件夹,在新版本的php中可以找
2012-04-21 17:05:22 1229
原创 最近动态
最近都没有怎么写博客,今天把我接下来要做的东西安排些。在寒假的时候,我基本上把《Windows程序设计》看完了,有些东西似懂非懂的,我觉得这些东西,只有去用了,才会真正地理解,并记住。所以我现在在做程序的时候偶尔还要看看书中的例子。这个学期是大二下,学院很变态,一周只给我们7节大课的时间休息(不包括周末),课嘛,又不能不上,所以只有挤时间出来弄自己想做的东西。我在学校参加了一个学生工作室,
2012-03-09 17:42:53 539 2
原创 Visual Studio调用自己编写的DLL
好久没写文章了,因为最近在忙考试。前几天终于考完了,现在继续我的Windows编程之路。今天看到动态链接库(DLL)了,看了书上一个简单的例子,就照着在VS上试了,但是因为书上都是用VC++6.0作为默认的编译器,所以,操作上有些出入,经过查询一些资料和动手尝试,终于解决了书上DLL章节的第一个例子。首先,按照书上说的创建工作空间,也就是VS中的解决方案(假设DLL项目在EDRLIB文件夹
2012-01-17 22:18:50 1606
原创 对BITMAPFILEHEADER中bfOffBits的理解
之前对BITMAPFILEHEADER结构中的bfOffBits这个成员很是疑惑。MSDN给出的定义是 Specifies the offset, in bytes, from the beginning of the BITMAPFILEHEADER structure to the bitmap bits.我自己觉得还是很模糊,然后自己写了一段代码来测试。Read
2011-12-03 16:27:53 5081 6
原创 对《Windows程序设计》的疑惑
前几天在书上看到 iWidthBytes = 2 * ((cx * cBitsPixel + 15) / 16) ; iWidthBytes = (cx * cBitsPixel + 15) & ~15) >> 3 ;两句话,刚开始很是疑惑,不明白为什么下面一语句和上面语句有相同的结果。通过到处查资料,终于明白了。 用通俗的话说,两语句的结果都是最靠近(cx * cB
2011-11-29 12:39:58 1214 2
Notepad++ HexEditor 0.9.6 非原作者版本
2016-05-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人