C++
guqiwei
贪心的程序员
展开
-
1>s.cpp(465) : error C2448: “main”: 函数样式初始值设定项类似函数定义 问题的解决方法
有时我们编译一些开源的C程序时会遇到如下编译错误:1>s.cpp(464) : error C2065: “argc”: 未声明的标识符1>s.cpp(464) : error C2065: “argv”: 未声明的标识符1>s.cpp(465) : error C2448: “main”: 函数样式初始值设定项类似函数定义 这主要是VS默认不支持这样的函数定义方式:int mai原创 2009-07-17 17:54:00 · 4824 阅读 · 0 评论 -
stl 学习笔记
set用法:#include class Test {public: Test(int a,int b) { this->a = a; this->b = b; } bool operator < (const Test &t)const { return b < t.b; } int a;原创 2012-02-14 19:03:59 · 541 阅读 · 0 评论 -
用Eclipse开发与调试纯粹的Android C++程序,非ndk-build、ndk-gdb
本文欢迎转载,但请注明出处。源文链接:http://blog.csdn.net/guqiwei/article/details/7279505 在做Android本地程序开发时,Google为我们提供了NDK开发环境,如果只是很小的工程,用NDK开发还是很方便的。但是如果是很大的工程,代码文件很多的时候,手工支配置android.mk文件还是很繁锁的。虽然Google不建议我原创 2012-02-21 14:52:49 · 6812 阅读 · 0 评论 -
使用autoconf、automake进行外部编译
通常linux下编译文件默认会使用内部编译方式,即编译的中间文件与源码放在一起,这样会使代码阅读带来很大的不便。如果使用外部编译将会很好的解决这个问题,下面我们以一个实例来讲解外部编译:gqw@debian:~/workspace$ tree ./test_hello/./test_hello/|-- build| |-- configure.ac| `-- Makefile.原创 2012-03-03 16:30:23 · 5977 阅读 · 0 评论 -
[Effective C++第三版•中文版][第20条]尽量使用“引用常量”传参,而不是传值
默认情况下, C++ 为函数传入和传出对象是采用传值方式的(这是由 C 语言继承而来的特征)。除非你明确使用其他方法,函数的形式参数总会通过复制实在参数的副本来创建,并且,函数的调用者得到的也是函数返回值得一个副本。这些副本是由对象的拷贝构造函数创建的。这使得“传值”成为一项代价十分昂贵的操作。请观察下边的示例中类的层次结构:class Person {public: Person();转载 2012-03-14 19:44:57 · 1485 阅读 · 0 评论 -
解决 android "launch error failed to connect to remote vm"
今天在调试Android程序时突然报出:launch error failed to connect to remote vmgoogle了很久,有人说kill掉adb进程,试过没用,最后才想起,自己在更新SDK manager的时候改过eclipse的代理,改回去终于正常了:原创 2012-04-04 21:23:01 · 8683 阅读 · 3 评论 -
linux 学习
debian 语言设置:1.安装语言包:#dpkg-reconfigure locales2.安装字体:#apt-get install ttf-arphic-gbsn00lplinux命令中使用环境变量的方法:通过如下方法:echo $(pwd)/dir 参考:http://blog.sina.com.cn/s/blog_4560b80b0100lxjr.html原创 2011-12-07 10:20:39 · 598 阅读 · 0 评论 -
emacs学习
使用emacs进行字符编码和换行符转换假设想将WINDOWS下GB2312编码的文本转换成LINUX下UTF-8格式的文本,使用如下命令执行转换:emacs test.txt #首先用emacs打开文件\C+x RET r gb2312 #由于默认使用的编码可能不是正确的编码,所以需要选择正确的编码来显示文本,否则会显示乱码\C+x RET f utf-8-unix #使用此命令原创 2012-02-14 15:11:10 · 1731 阅读 · 0 评论 -
screen+emacs 配置文件
screen:## ~/.screenrc#setenv LC_CTYPE en_US.UTF-8defutf8 ontermcapinfo xterm 'hs:ts=\E]2;:fs=\007:ds=\E]2;screen\007'# 启动时不显示欢迎屏幕startup_message off# 屏幕缓冲区 1024 行。defscrollback 10240原创 2012-05-08 13:12:30 · 866 阅读 · 0 评论 -
使用NDK编译CMU Sphinx
Sphinx使用的Autotool(但是版本很旧),所以使用NDK编译需要配置环境:#! /bin/bashLD_LIBRARY_PATH+=" /home/gqw/workspace/sphinx/sphinxbase/lib/ ":export LD_LIBRARY_PATHexport ANDROID_HOME=/home/gqw/workspace/android原创 2012-06-01 16:43:47 · 2007 阅读 · 0 评论 -
eclipse cdt 无法正确显示代码提示 No Default Proposals
eclipse cdt 无法正确显示代码提示 No Default Proposals解决方法:重新导入工程参考:http://www.cnblogs.com/erain/archive/2009/03/20/1418072.html原创 2011-12-14 15:42:05 · 1466 阅读 · 0 评论 -
git 学习与使用
1.恢复删的文件git checkout $(git ls-files -d)原创 2011-11-24 20:09:46 · 451 阅读 · 0 评论 -
如何设置默认浏览器
第一种方法:如果你只喜欢系统自带的IE浏览器,只要通过下面的方法将它设置为默认的浏览器即可: 打开IE浏览器主窗口,然后单击“工具”→“Internet选项”,在打开的窗口中选择“程序”选项卡,然后勾选“检查Internet Explorer是否为默认浏览器”,最后单击“确定”,这样,当你下次打开IE浏览器时,系统就会自动检查并提示你设置。相反,如果你不想使用IE浏览器,那就是去掉那个勾了。第原创 2010-02-08 21:33:00 · 1159 阅读 · 0 评论 -
用IShellDispatch 接口 获得文件的摘要信息
IShellDispatch* pShellDisp = NULL; Folder *pFolder; FolderItem *pFolderItem; CComBSTR stitle,str; HRESULT hr = S_OK; CoInitialize(NULL); hr = ::CoCreateInstance(原创 2009-12-31 21:19:00 · 2191 阅读 · 0 评论 -
字节转换
BOOL CWinInternet::MByteToWChar(LPCSTR lpcszStr, LPWSTR lpwszStr, DWORD dwSize){ // Get the required size of the buffer that receives the Unicode // string. DWORD dwMinSize; dw原创 2010-01-12 13:00:00 · 649 阅读 · 0 评论 -
vs 生成后事件 写法
<br />xcopy /C/R/F/Y $(TargetPath) ../../../binc/example/win32d/<br />注意XCOPY参数格式,否则总是出错原创 2010-07-05 11:17:00 · 1156 阅读 · 0 评论 -
MSDN NM_CUSTOMDRAW (list view) 中文翻译
<br />NM_CUSTOMDRAW (list view) Notification<br />NM_CUSTOMDRAW(list view)通知<br />Sent by a list-view control to notify its parent windows about drawing operations. This notification is sent in the form of a WM_NOTIFY message.<br />list-view控件向其父窗口发送重绘操作的通翻译 2010-07-14 13:55:00 · 2189 阅读 · 0 评论 -
ADO CreateParameter 0xC0000005 错误原因及解决方法
<br /> 一个小问题却搞了我一天时间,留个记号,以后注意。 <br /> 昨天用ADO调用带参数的存储过程,其它一切都挺顺利的,到运行到: m_lpCommand->CreateParameter(_T("@testn"),adInteger,adParamInput,l,_variant_t(1));<br />时却报 0xC0000005 错误。google一下问的人还挻多的,不过没有找到解决方法。<br /> <br />搞了一天,无果,今天早上来接着搞,将创建参数的方式改了一原创 2010-12-16 11:21:00 · 3297 阅读 · 0 评论 -
Gdi+ DrawImage OutOfMemory 问题原因分析
<br />最近用GDI+写东西时发现 通过FromXXX得到的对象最后是要用户自己删除对象的不然会出现OutOfMemory的问题,代码如下:<br /> //创建GDI+缓冲对象 Bitmap bmpMem(crtClient.Width(),crtClient.Height()); Graphics *lpGpMem = Graphics::FromImage(&bmpMem); ... //拷贝到屏幕 Graphics *lpGp = G原创 2010-11-19 10:14:00 · 2808 阅读 · 0 评论 -
无法启动屏幕键盘
今天在编写一个应用程序时,需要调用系统的屏幕虚拟键盘,没想到这么简单的调用竟然出现问题,报“无法启动屏幕键盘“错误。试了各种调用方法:ShellExcute、CreateProcess、WinExec、system等方法都不能成功调用。但是奇怪的是在命令行或者程序->运行 中调用却又是正常的。逼的没办法,想到先将C:\Windows\System32\osk.exe程序拷贝到当前目录下再运行程序,原创 2011-11-21 18:16:37 · 18177 阅读 · 2 评论 -
Agent admitted failure to sign using the key
SSH生成id_rsa, id_rsa.pub后,连接服务器却报:Agent admitted failure to sign using the key错误。解决方法:在当前用户下执行命令:ssh-add即可解决。参考:[1] http://blog.sina.com.cn/s/blog_671dff260100ps66.html原创 2011-11-24 19:14:15 · 21072 阅读 · 8 评论 -
javap -s 查看java方法签名
$ javap -s java.lang.StringCompiled from "String.java"public final class java.lang.String extends java.lang.Object implements java.io.Serializable,java.lang.Comparable,java.lang.CharSequence{public原创 2012-06-04 20:53:30 · 9717 阅读 · 0 评论