C++
Breakwu
沙雕网友
展开
-
隐式转换
当类构造函数只有一个参数或除了第一个参数外其余参数都有默认值时,则此类有隐含的类型转换操作符(隐式转换),但有时隐式转换并不是我们想要的,可在构造函数前加上关键字explicit,来指定显式调用。void fun(CTest test); class CTest { public: explicit CTest(int m = 0); } fun(20);//error 隐...原创 2019-10-27 21:58:27 · 222 阅读 · 0 评论 -
sem_trywait()
sem_wait()会等待信号,当没有信号发过来时,阻塞等待,当有信号时立即返回并且执行。sem_trywait()会检测信号,如果信号没有发过来,则返回EAGAIN=11,如果有收到信号,返回0。...原创 2019-07-25 15:06:43 · 7673 阅读 · 0 评论 -
指向数组的指针和指向变量的指针不一样
指向数组的指针跟一般意义的指针不一样,特别是在打印的时候,指向数组的指针打印内容可以用p[i]来打印,但是指向变量的指针打印必须解引用。原创 2019-07-11 19:50:58 · 235 阅读 · 0 评论 -
C++虚函数
虚函数原创 2019-07-05 11:11:51 · 68 阅读 · 0 评论 -
工厂模式的一种特殊用法
TBOX中用到的一种工厂模式为了让接口和实际的供应商方法实现分离,在接口文件中定义纯虚类作为接口,再定义一个工厂类。注意这个文件中的这两个类只有定义,没有实现。然后在另一个文件中定义实际的供应商文件,供应商文件中实现工厂类,工厂类creat实际的供应商实例。并且供应商类是接口文件的子类,这样,在其调用工厂类实例化的地方得到是真正工厂类实现创建的供应商...原创 2019-06-24 15:40:46 · 162 阅读 · 0 评论 -
c++编译错误
编译报错:invalid new-expression of abstract class type ‘×××ב这个报错代表一个尝试在实例化一个抽象类,也就是说父类的接口中有纯虚函数在子类中没有实现;举个例子来看,假如说父类定义成了一个接口...原创 2019-06-20 13:57:52 · 619 阅读 · 0 评论 -
linux关于时间的函数
1. time() 函数获取当前时间配合结构体:time_t (秒形式)用法:time_t time(time_t *t);此函数会返回从公元1970年1月1日的UTC时间从0时0分0秒算起到现在所经过的秒数。如果t 并非空指针的话,此函数也会将返回值存到t指针所指的内存2.localtime()获取时分秒格式的时间配合结构体:tm (时分秒年月日形式)用法:struct tm *lo...原创 2019-06-19 17:09:18 · 174 阅读 · 0 评论 -
std::cout
C++中输出数组数据分两类情况:字符型数组和非字符型数组当定义变量为字符型数组时,采用cout<<数组名; 系统会将数组当作字符串来输出。但是对于其他的变量则需要遍历输出。记住!!!...原创 2019-05-12 15:23:27 · 2395 阅读 · 0 评论 -
string成员函数
string(const char *s); //用c字符串s初始化原创 2019-05-05 10:28:36 · 263 阅读 · 0 评论 -
日常code总结
向vector中memcpy时,vector不会自动增长!!1原创 2019-04-28 23:04:31 · 89 阅读 · 0 评论 -
bt编码中学到的
1.string可以被char型的vector赋值2.vector a取首地址应该是&a[0]3.类中函数想当做函数指针,怎么做?原创 2019-04-28 00:57:05 · 239 阅读 · 0 评论 -
普通类继承模板类
普通类继承模板类,在继承时实例化了模板类,那么在普通类的构造函数中需要初始化模板类的实例。如下所示BASE.HPP#include <iostream>template <typename T>class base{public: base(T v){ num = v; } base(){ T a = 0; num = a; } ...原创 2019-04-13 16:24:48 · 1864 阅读 · 0 评论 -
size_type
size_type 相当于 unsigned int类型使用size_type 主要是为了适应不同的平台int 类型大小会根据不同平台而不同原创 2019-04-13 14:43:15 · 116 阅读 · 0 评论 -
std::get与std::make_tuple
int main(){auto t = std::make_tuple(1, “Foo”, 3.14);// index-based accessstd::cout << “(” << std::get<0>(t) << ", " << std::get<1>(t)<< ", " << std...原创 2019-04-09 17:31:11 · 1126 阅读 · 0 评论 -
struct与class不一样!!!
base.hpp#ifndef _BASE_#define _BASE_#include <tuple>#include <iostream>template <typename... T>struct base{ std::tuple<T...> values_;};#endifserver.hpp#ifnd...原创 2019-04-12 10:11:30 · 120 阅读 · 0 评论 -
基础
前面什么也没有::来区分全局作用域符号。前面有内容的代表这个类或者名字空间里面原创 2019-04-12 10:02:49 · 91 阅读 · 0 评论