小编Zac*_*ach的帖子

如何在用户控件 WinForm 中访问托管表单上的控件

在 Visual Studio 中,如何访问承载用户控件的表单上的控件?例如,当用户控件的文本框中的文本更改时,我希望另一个用户控件的另一个文本框中的文本更改。这两个用户控件都托管在同一个窗体上。提前致谢!

c# user-controls windows-forms-designer visual-studio winforms

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

排序unique_ptrs列表

以下代码将无法编译:

bool ptrLess(unique_ptr<int> ptr1, unique_ptr<int> ptr2)
{
   return *ptr1 < *ptr2;
}

int main()
{
   unique_ptr<int> ptr1(new int(3));
   unique_ptr<int> ptr2(new int(2));
   unique_ptr<int> ptr3(new int(5));
   list<unique_ptr<int>> list;

   list.push_back(ptr1);
   list.push_back(ptr2);
   list.push_back(ptr3);

   list.sort(ptrLess);

   for (auto &element : list) {
      cout << *element;
   }

   return 0;
}
Run Code Online (Sandbox Code Playgroud)

我假设这是因为unique_ptr删除了复制构造函数.我得到一个错误:

错误C2280:'std :: unique_ptr> :: unique_ptr(const std :: unique_ptr <_Ty,std :: default_delete <_Ty >>&)':尝试引用已删除的函数

有没有办法对列表进行排序unique_ptr,可能是通过使用移动构造函数来代替?

c++ smart-pointers

2
推荐指数
1
解决办法
412
查看次数