
c/c++
powerlly
喜好运动、无不良嗜好、工作热忱、小硕
Hope be your friend!
展开
-
一道笔试题聊聊求职者心态
游戏行业10年,作技术管理也已经5年。面试一直负责复试,当初试官觉得技术能力匹配后,我更侧重考察应试者的性格、态度、分析问题能力。疫情推动了远程办公、线上学习、视频交流的习惯,可以说阴差阳错加速了远程技术应用落地,改变了很多行业的模式。我们的面试也考虑应试者:不在本地、不好请假、路程太远,等等原因,开始了远程笔试、视频面试(目前我对视频面试的效果不太满意,希望尽量当面沟通)。最近认真看了几个应试者的笔试题,而且是远程作答,不是现场临考。如下笔试比较常见的题,问:输出是什么?class原创 2021-07-22 09:53:25 · 229 阅读 · 1 评论 -
GDB调试如何在return设置断点
GDB调试时常用设置断点的方法有:1. 按照源文件代码,在某行设置断点,如:b **.cpp:402. 指定函数符号,在函数入口设置断点,如:b CBiPlayer::CanAutoStart这次遇到一个问题,用方法1在一条 return 语句设置断点,无法设置,查看断点信息,实际上断点是后续代码。为什么呢?代码如:...原创 2021-07-20 06:45:42 · 1192 阅读 · 1 评论 -
.h为什么会被编译链接?
C/C++开发人员肯定都知道.c .cpp 源文件才应该被编译、链接。 这次就遇到了奇葩的问题: 开发环境:VS2017 错误提示:命令行 warning D9024: 无法识别的源文件类型“..\**interface.h”,假定为对象文件。 看到这个报错,一开始也是迷糊了,这有两层含义: 1. 找不到“..\**interface.h”; 2.“..\**interfac...原创 2021-07-17 07:54:46 · 496 阅读 · 0 评论 -
解决Mac下GDB提示签名错误
Mac下给gdb授权原创 2014-06-12 22:34:53 · 10289 阅读 · 3 评论 -
Why does C++ compilation take so long?
Several reasons:1. Header filesEvery single compilation unit requires hundreds or even thousands of headers to be 1: loaded, and 2: compiled. Every one of them typically has to be recompiled转载 2013-05-03 11:23:53 · 548 阅读 · 0 评论 -
C++预编译头小记
随着功能的不断增加,工程逐渐庞大,编译、链接时间明显变长,于是考虑进行优化。在多人进行开发,而没有代码质量监控的话,确实很容易造成这样的结果,尽早发现和解决这些问题,可以避免更大的麻烦。现在所遇到的问题主要有:1. 模板的大量使用2. 头文件包含混乱3. 头文件中直接定义首先考虑采用预编译头文件方式处理。预编译头(Precompile head)**原创 2013-05-03 11:21:55 · 798 阅读 · 0 评论 -
std::string::replace使用小计
ctrl+c / ctrl+v 真是害死人,看起来简单的东西,往往却又很容易出问题究其原因,还在于只知其表不知其里,容易想当然。今天遇到的问题是简单调用string::replace替换子串的问题,如:std::string sTest1 = "12x567890";std::string sTest2 = sTest1;std::string sSub = "x";原创 2013-01-08 08:05:50 · 7658 阅读 · 0 评论 -
map使用小计--神奇的插入
一直走寻常路,平平淡淡偶遇新人“热血”,涟漪泛泛 对于list、vector、map等的使用,一直都是凭感觉在用,没有深入其中看个究竟这也就容易导致知其然而不知其所以然也难以将已有功能应用到极致这种毛病应该改改 今天就遇到一个相关问题,帮调试一段代码,安装一贯思维百思不得其解,代码如下: std::map testmap; int value = tes原创 2012-12-10 12:02:27 · 771 阅读 · 0 评论 -
VS多工程共享工程设置
对于项目庞大有多个工程或者插件开发等,有不断增加工程的需求的情况创建新的工程后,往往需要做一些设置工程属性的重复工作原来都是拷贝原来的工程,文本编辑下工程文件 其实VS提供了工程属性模板的功能: Property Sheets 。这里记录一下。。。http://msdn.microsoft.com/en-us/library/a4xbdz1e(v=vs.80).aspx原创 2012-12-09 21:39:48 · 531 阅读 · 0 评论 -
特殊字符英文系统显示乱码
遇到个编码问题,不是中文库问题,英文系统有该字符,开始比较混乱,一天了才解决:例如字符:°(经纬度的度符号)通过LPCTSTR degree = _T("°"); // 或 代码点(code point)LPCTSTR degree = _T("/u00B0");// 对话框中显示SetDlgItemText(IDC_STA_DEGREE, degree);以上做法在中文/英文系统中都是正常原创 2010-03-25 20:47:00 · 2543 阅读 · 0 评论 -
gflags调试工具
gflags Windows调试工具。使用它帮助我解决了瞎调了一整天的内存问题。 由于使用了已经delete的指针,VS提示位置又错误的情况下,瞎调了一通。怎么想那块也不会有问题,可是抱着对VS的信任把错就归咎于自己吧! 偶然的机会,搜到了gflags,抱着试一试的心态,使用该工具: 1. 安装:Debugging Tools for Win原创 2010-03-05 10:51:00 · 4626 阅读 · 1 评论 -
VS2005多线程调试“起死回生”
在近两天前的很长一段时间,都被调试程序时死机状苦恼着。那个郁闷心情现在彻底不复存在了^_^ 每次在子线程代码段中设置断点,再执行几步“必死无疑”:病号:IBM T60, WinXP SP2, VS2005 C++症状:鼠标可用,键盘无效,Alt+Tab无法切换,CPU闲,似死非死状 初始未寻良方诊治,自开一处:药方一:长按开机键(5秒),重原创 2010-02-04 14:32:00 · 1733 阅读 · 2 评论 -
常见编译/链接错误及其解决办法
1. 解决error LNK2005: ___crtExitProcess 已经在 LIBCMTD.lib(crt0dat.obj) 中定义有的時候, 在 Debug 模式下編譯沒問題, 換到 Release 模式就發生一堆問題.典型的例子, 就是因為 c++ runtime library 設定不同, 所造成的重複定義連結錯誤.而另一個常見的例子是 專案與 library 使用不同的字元原创 2009-08-04 23:29:00 · 3211 阅读 · 0 评论 -
创建纯资源 DLL
纯资源 DLL 是仅包含资源(如图标、位图、字符串和对话框)的 DLL。使用纯资源 DLL 是在多个程序之间共享同一组资源的好方法。提供其资源被针对多种语言进行本地化的应用程序也是一种好方法(请参见 MFC 应用程序中的本地化资源:附属 DLL)。若要创建纯资源 DLL,请创建一个新的 Win32 DLL(非 MFC)项目,并将资源添加到此项目。在“新建项目”对话框中选择“Win32 项目”,并在转载 2009-08-04 23:18:00 · 1378 阅读 · 1 评论 -
很实用的宏中"#"和"##"的用法
一、一般用法我们使用#把宏参数变为一个字符串,用##把两个宏参数贴合在一起.用法:#include#includeusing namespace std; #define STR(s) #s#define CONS(a,b) int(a##e##b)int main(){ printf(STR(vck)); // 输出字符串"vck" printf("转载 2009-08-05 23:26:00 · 513 阅读 · 0 评论 -
Windows线程函数概述 - 《C++编程艺术》
Windows提供了多组支持多线程的应用程序接口(API)函数。许多读者已经对Windows提供的多线程函数有一定程度的了解,但是对于那些不熟悉这些的读者,本章提供了这些函数的概述。记住,Windows提供了许多其他的基于多线程的函数,这些函数需要您自己去探索。为了使用Windows的多线程函数,必须在程序中包含。1 线程的创建和终止 Windows API提转载 2009-05-15 14:54:00 · 2166 阅读 · 0 评论 -
从MFC与ATL的男女关系说起
感觉写的挺有意思,就转了。 Trace: http://tech.163.com/06/0704/11/2L6CBCLN00091LRC.html 我从大三开始学习MFC,对于一个学软件的学生来说算是有点晚,到现在差不多有3个年头了。我在大四进入公司实习开始学习COM,接触到ATL并用它来做开发。我在大二冬天开始恋爱,到现在为止第一段爱情走过3个半年头终于到了末路转载 2009-02-25 11:28:00 · 537 阅读 · 0 评论 -
再忆起C/C++
C已经放下很久了,大一学的基础语言,之后学C++,学/用VC好长一段时间,直到大三上Java毕设用Java,然后是直到4个月前一直用Java/J2EE的东西,现在又改用了C#。呵呵,看起来学了不少语言。虽说编程语言都是相通的,确实如此,先前学的为后来打下了基础。但是,各门语言到细处还是有很多不同的,现用现学吧。现在又是找工作的时候了,论坛里到处是笔经、面经、笔试题,等等,又忙起来了(呵呵,不是原创 2008-10-26 19:43:00 · 601 阅读 · 1 评论 -
重温C编译链接过程[环境:UNIX-CENTER提供的公共fedora]
在优快云上看到了UNIX-CENTER提供的UNIX公用平台,于是下载了SSH软件,尝试了一下,感觉很好。一方面,让我们体会了一下使用多核系统的感觉;更重要的方便了对安装UNIX望而却步的和我一样的人,呵呵,着实不错!很就没有编写C程序,在UNIX下就更是没有经历。于是开始了Hello world!1. 安装在solaris下开发C应用程序,缺省开发环境是Sun Studio。UNIX-CE原创 2007-05-13 22:35:00 · 2336 阅读 · 2 评论