小编Nil*_*esh的帖子

AES 中的密钥验证

如果用户输入了错误的 AES 解密密钥,就会产生一些垃圾数据。我想验证给定的解密密钥并在密钥不正确时抛出错误。如何验证用户输入的密钥?

encryption aes

6
推荐指数
1
解决办法
2684
查看次数

请说明条件变量在c ++线程中的用法,以及为什么我们需要同时使用`unique_lock`和`mutex`

我指的是这段特定的代码:

该代码基本上具有三个线程1.与服务器进行一些握手2.从XML文件加载数据。3.对从XML加载的数据进行处理。如我们所见,任务1不依赖于任何其他任务,但是任务3依赖于任务2。因此,这意味着任务1和任务2可以由不同的线程并行运行以提高应用程序的性能。因此,应用程序被构建为多线程的。

#include <iostream>
#include <thread>
#include <functional>
#include <mutex>
#include <condition_variable>
using namespace std::placeholders;

class Application
{
  std::mutex m_mutex;
  std::condition_variable m_condVar;
  bool m_bDataLoaded;
public:
  Application()
  {
    m_bDataLoaded = false;
  }
  void loadData()
  {
   // Make This Thread sleep for 1 Second
   std::this_thread::sleep_for(std::chrono::milliseconds(1000));
   std::cout<<"Loading Data from XML"<<std::endl;
   // Lock The Data structure
   std::lock_guard<std::mutex> guard(m_mutex);
   // Set the flag to true, means data is loaded
   m_bDataLoaded = true;
   // Notify the condition variable
   m_condVar.notify_one();
  }
  bool isDataLoaded()
  {
    return m_bDataLoaded;
  } …
Run Code Online (Sandbox Code Playgroud)

c++ multithreading condition-variable

3
推荐指数
1
解决办法
6666
查看次数

通过引用另一个类的构造函数传递对象时出错

我有两个类,其中一个类有另一个类的对象作为数据成员,它的构造函数接受类对象来初始化数据成员对象。

class x{

public:
    x(int a, int b)
     { cout << a << b;}
  };

class y{

 x temp;

 y(x& o){ this-> temp = o;}
 };
Run Code Online (Sandbox Code Playgroud)

但编译器在 y::y(x&) 中显示错误:没有匹配的函数来调用 x::x()

我正在使用代码块 16.01

c++ constructor class

0
推荐指数
1
解决办法
158
查看次数