我没想到这系列还能出第三期,我佛了,Windows,你拿什么来赔我!
这次的问题是:在遍历窗口句柄想要输出每个窗口的标题时,中文标题无法正常输出。
继续阅读“C++ 在 MSVC 编译器环境下如何向 Windows 控制台或文件正确输出中文”脑子不太好用的普通人。
我没想到这系列还能出第三期,我佛了,Windows,你拿什么来赔我!
这次的问题是:在遍历窗口句柄想要输出每个窗口的标题时,中文标题无法正常输出。
继续阅读“C++ 在 MSVC 编译器环境下如何向 Windows 控制台或文件正确输出中文”对我而言,开发最容易踩到坑踩到屎的就是 iOS 开发,其次是 Windows 开发。
归其原因,一般我接触到的 C++ 开发都是以类 unix 系统作为开发的(MacOS、Android、Linux),所以作为不同源且自成门派的 Windows 系统开发对我来说,开发的时候就能感受到很多割裂感,比如 Windows 特有的各种 winAPI,以及不同于类 unix 系统的各种习惯。(例如回车是 LRLF,Visual Studio 文件编码之类的)。
这次可是吃了一坨大的,也多亏于此我对于文件的编码有了更深的认识。
接下来就讲一下我的探索之旅。
继续阅读“使用宽字符解决 Windows 路径乱码问题 —— 没那么深入理解 Windows 下C++ 字符串编码”起因是我写了这么一段代码:
template <typename type> class LIFO_stack : public my_stack<type> { template <typename ano_type> friend ostream& operator<<(ostream& os, LIFO_stack<ano_type>& s); } template <typename type> ostream& operator<<(ostream& os, LIFO_stack<type>& s) { auto it = --s.vec.end(); for (; it != s.vec.begin(); --it) { os << *it << ' '; } os << *it << endl; return os; }
在我实现的LIFO_stack类里面,有一个print()函数,而这个函数是通过调用<<操作符实现的:
最近花了点时间把essential C++的第五章(讲继承)和第六章(讲模板)的部分给看完了。自己试着写一个栈来练习一下,以下是代码