Cpp
折腾怪
这个作者很懒,什么都没留下…
展开
-
Mac vscode 调试打印有问题 输出缓冲区 “\r\n“
回归csdn,做回技术。之前一直用gdb没出现过这种问题因为mac平台是lldb存在输出缓冲区,在单步调试时发现cout输出不是执行完才输出的。有两种方法解决:每一个输出都加一个回车endl或者每次输出都fflush(stdout); 刷新缓冲区externalConsole": true,或者"externalConsole": false,来控制输出的地方。如果是false 输出到debugConsole窗口,每次输出都会有\r\n 这是没啥办法的。。。官方也没解决。。.原创 2020-08-14 22:07:05 · 834 阅读 · 0 评论 -
STL中istream_iterator和ostream_iterator的基本用法
https://www.cnblogs.com/VIPler/p/4367308.html原创 2018-06-12 13:08:26 · 245 阅读 · 0 评论 -
C++11可变模版参数的妙用+ 认真分析mmap:是什么 为什么 怎么用
认真分析mmap:是什么 为什么 怎么用泛化之美--C++11可变模版参数的妙用两篇文章都很好。注意一下mmap下面的评论。原创 2018-05-16 12:29:59 · 534 阅读 · 0 评论 -
C++ 实验 5.12
程序:变参模板输出多种类型参数 主要涉及右值引用,移动语义 可参考:右值引用....等等先上代码:#include <iostream>#include <string>#include <chrono>struct St { std::string description;};template <class T>void ...原创 2018-05-15 23:51:29 · 336 阅读 · 0 评论 -
C++ 小实验5.8 补充
#include <iostream>using namespace std;ostream& fun(ostream& os){ os<<"hello"<<endl; return os;}int main(){ cout<<fun<<"success"<&原创 2018-05-15 18:56:05 · 170 阅读 · 0 评论 -
C++ 小实验 5.8
static std::map<std::ostream *, std::unique_ptr<std::mutex>> stream_locks;std::ostream& printf_lock(std::ostream& os) { auto&ptr= stream_locks[&os]; if(!ptr)ptr = std::m...原创 2018-05-15 01:00:25 · 411 阅读 · 0 评论 -
MySQL列的别名 insert into select from
MySQL列的别名有时,列的名称是一些表达式,使查询的输出很难理解。要给列一个描述性名称,可以使用列别名。以下语句说明了如何使用列别名:SELECT [column_1 | expression] AS descriptive_nameFROM table_name;SQL要给列添加别名,可以使用AS关键词后跟别名。 如果别名包含空格,则必须引用以下内容:SELECT [column_...转载 2018-05-07 18:00:56 · 1479 阅读 · 0 评论 -
C++纯虚析构函数
图说C++对象模型:对象内存布局详解:https://blog.csdn.net/suchto/article/details/54947869?fps=1&locationNum=9原文:https://blog.csdn.net/yby4769250/article/details/7294733纯虚析构函数和普通纯虚函数的区别在于,纯虚析构函数需要提供函数的实现,而一般纯虚函数不能有...转载 2018-05-06 21:43:48 · 9156 阅读 · 6 评论 -
基于单例模式的日志输出(C++)
原文:https://blog.csdn.net/giser_mxd/article/details/75557410 在软件运行中,系统一般会采用一个持久化的日志系统来记录运行情况。 本题你需要实现一个简易的 logger 日志类,这个类主要负责辅助调试,将日志信息输出到一个日志文件中。12 比赛预期的输出为同一目录下的 shiyanloulogger.log日志文件,文件的内容如下:s...原创 2018-05-06 20:46:14 · 1125 阅读 · 0 评论 -
C++两个 delete 后的问题 野指针
最近在网上看到两个关于指针 delete 后的问题。第一种情况:123int* p = new int;delete p;delete p;// p为什么能delete两次,而程序运行的时候还不报错。第二种情况:123int* p = new int ;delete p;*p = 5; //delete后对*p进行再赋值居然也可以(他的平台上运行并没有引发什么错误)?...转载 2018-05-11 15:53:31 · 1788 阅读 · 1 评论 -
C++函数指针解引用
声明函数的引用:int f( double ); int (* const pf)(double) = f; // pf是指向函数f()的常量指针 int (&rf)(double) = f; // rf是函数f()的引用 从编码实践角度来看,指向函数的常量指针和函数的引用并无很大不同。除了一点,那就是指针可以显式地使用反引用语法,而对引用是不能...转载 2018-05-11 15:25:50 · 2156 阅读 · 0 评论 -
C++成员变量指针和成员函数指针【The semantics of funcitons】
原文:https://blog.csdn.net/laojiu_/article/details/68946915(原文有笔误)1.#include <cstdio>#include <cstdlib>#include <iostream>using namespace std;class A{public: A(int a=0,int b=...转载 2018-05-11 15:07:44 · 174 阅读 · 0 评论 -
C++——虚函数(Virtual Member Functions) 【functions语意学】
单继承下的虚函数虚函数的实现:为每个有虚函数的类配一张虚函数表(virtual table),它存储该类类型信息和所有虚函数执行期的地址。为每个有虚函数的类插入一个指针(vptr),这个指针指向该类的虚函数表。给每一个虚函数指派一个在表中的索引。用这种模型来实现虚函数得益于在C++中,虚函数的地址在编译期是可知的,而且这一地址是固定不变的。而且表的大小不会在执行期增大或减小。一个类的虚函数表中存储...原创 2018-05-11 14:29:01 · 651 阅读 · 0 评论 -
ifndef/define/endif——主要目的是防止头文件的重复包含和编译
原文:http://www.jb51.net/article/100939.htm原文:https://blog.csdn.net/abc5382334/article/details/18052757ifndef/define/endif”主要目的是防止头文件的重复包含和编译 想必很多人都看过“头文件中的 #ifndef/#define/#endif 防止该头文件被重复引用”。但是是否能理解“被...转载 2018-04-13 15:19:40 · 535 阅读 · 0 评论 -
经典问题——进程和线程区别
写的很全面http://mp.weixin.qq.com/s?__biz=MjM5MDIzNDQ5MQ==&mid=205544379&idx=2&sn=d61335de549e0015ad9f131600d4eb22&scene=1&key=0acd51d81cb052bce2c7995ff6e99707a99605041e7a68d44569fcc2ca...转载 2018-04-22 21:30:27 · 103 阅读 · 0 评论