杂七杂八备忘录

(一)c++写内容到文件中

#include
#include
#include
#include
#include
using namespace std;
void main()
{
    std::string msg = "123456";
    ofstream outfile;   //输出流
    int index = ::GetTickCount();
    std::string fileName = std::string("D:\\") + std::to_string((long long)index) + ".txt";
    outfile.open(fileName, ios::app);   //每次写都定位的文件结尾,不会丢失原来的内容,用out则会丢失原来的内容

    outfile <     outfile.close();
}

 

(二)std::tuple的使用

  std::tuple tp(0, 10, 'a');
  int first = std::get<0>(tp);
  int second = std::get<1>(tp);
  char third = std::get<2>(tp);

  int size = std::tuple_size::value;

对于传递一些临时的参数比较方便。不用转门定义结构体了。

 

(三)纤程(Fiber)

之前调试srand函数的实现,发现里头把随机数种子放到了TLS(线程本地存储)里头,然后里头的一些函数是Fls开头的,原来这个函数是纤程本地存储(FLS),和TLS类似。像这四个函数FlsAllocFlsFreeFlsGetValue,  FlsSetValue。

纤程:https://docs.microsoft.com/zh-cn/windows/win32/procthread/fibers

TLS:https://docs.microsoft.com/zh-cn/windows/win32/procthread/thread-local-storage

 

 

 

你可能感兴趣的:(C/C++)