这个程序有什么问题?
#include <memory>
#include <vector>
int main()
{
std::vector<std::unique_ptr<int>> vec;
int x(1);
std::unique_ptr<int> ptr2x(&x);
vec.push_back(ptr2x); //This tiny command has a vicious error.
return 0;
}
Run Code Online (Sandbox Code Playgroud)
错误:
In file included from c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/mingw32/bits/c++allocator.h:34:0,
from c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/bits/allocator.h:48,
from c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/memory:64,
from main.cpp:6:
c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/bits/unique_ptr.h: In member function 'void __gnu_cxx::new_allocator<_Tp>::construct(_Tp*, const _Tp&) [with _Tp = std::unique_ptr<int>, _Tp* = std::unique_ptr<int>*]':
c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/bits/stl_vector.h:745:6: instantiated from 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = std::unique_ptr<int>, _Alloc = std::allocator<std::unique_ptr<int> >, value_type = std::unique_ptr<int>]'
main.cpp:16:21: instantiated from here
c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/bits/unique_ptr.h:207:7: error: deleted function 'std::unique_ptr<_Tp, _Tp_Deleter>::unique_ptr(const …Run Code Online (Sandbox Code Playgroud) 我正在使用启用了-std = c ++ 11的g ++ 4.7(后面的一个快照).我试图编译一些现有的代码库,一个失败的案例让我感到困惑.
如果有人能解释发生了什么,我将不胜感激.
这是代码
#include <utility>
#include <iostream>
#include <vector>
#include <string>
int main ( )
{
std::string s = "abc";
// 1 ok
std::pair < std::string, int > a = std::make_pair ( s, 7 );
// 2 error on the next line
std::pair < std::string, int > b = std::make_pair < std::string, int > ( s, 7 );
// 3 ok
std::pair < std::string, int > d = std::pair < std::string, int > ( …Run Code Online (Sandbox Code Playgroud) 如果我分配一个类的对象Derived(具有基类Base),并将指向该对象的指针存储在指向基类的变量中,我该如何访问Derived该类的成员?
这是一个例子:
class Base
{
public:
int base_int;
};
class Derived : public Base
{
public:
int derived_int;
};
Base* basepointer = new Derived();
basepointer-> //Access derived_int here, is it possible? If so, then how?
Run Code Online (Sandbox Code Playgroud) 一旦拉取请求被批准,如果还有进一步的提交:
Pull请求应自动进入未批准状态.
可以这样做吗?
以下程序显示我们可以使用return()或pthread_exit()返回可用于pthread_join()的状态变量的void*变量.
(1)是否应优先使用一个而不是另一个?
(2)为什么使用return()有效?通常我们会想到返回将值放在堆栈上但是由于线程已经完成,堆栈应该消失.或者堆栈是否在pthread_join()之后才被销毁?
(3)在你的工作中,你是否看到很多地方变量的使用?我看到90%的代码看起来只是NULL状态参数.因为通过void*ptr改变的任何东西已经反映在调用线程中,所以返回它似乎没什么意义.返回的任何新的void*ptr都必须指向由开始线程进行malloc化的东西,这使得接收线程有责任处理它.我认为状态变量是无意义的,我错了吗?
#include <iostream>
#include <pthread.h>
using namespace std;
struct taskdata
{
int x;
float y;
string z;
};
void* task1(void *data)
{
taskdata *t = (taskdata *) data;
t->x += 25;
t->y -= 4.5;
t->z = "Goodbye";
return(data);
}
void* task2(void *data)
{
taskdata *t = (taskdata *) data;
t->x -= 25;
t->y += 4.5;
t->z = "World";
pthread_exit(data);
}
int main(int argc, char *argv[])
{
pthread_t threadID;
taskdata t = {10, 10.0, "Hello"};
void *status;
cout …Run Code Online (Sandbox Code Playgroud) 我们有一个代码审查存储库,人们hg push -f可以使用各种各样的东西.审核完成后,我们从项目的中央存储库,rebase和push中提取.我最近升级到mercurial 2.1并收到此消息:
abort: can't rebase immutable changeset 43ab8134e7af
(see hg help phases for details)
Run Code Online (Sandbox Code Playgroud)
当我尝试hg pull --rebase从中央存储库.我如何解决它?
我希望Dreamweaver在选择标签时向我显示开/关标签.许多编辑都可以看到这个功能,我知道Eclipse确实有这个功能.
为了使事情更清楚:当我<div>用鼠标选择/突出显示开始标记时,我希望Dreamweaver选择/突出显示</div>结束标记.
我的主要问题:
我已经尝试在Adobe交换机上搜索Dreamweaver扩展但无法找到我正在寻找的内容.
如果我知道一个集合是另一个集合的子集,并且我想找到差异,那么最有效的方法是什么?
恩.PSEUDO CODE
> set<int> set1 = {1 2 3 4 5 6 7 8 9 10}
> set<int> set2 = {5 6 7}
Run Code Online (Sandbox Code Playgroud)
我想减去set2来自set1:
这里的答案是
{1 2 3 4 8 9 10}
Run Code Online (Sandbox Code Playgroud) 有人可以建议使用带有箭头和下拉列表的按钮的最佳方法,例如在visual studio工具栏按钮新项目中.正如您在VS中所见,鼠标悬停突出显示默认按钮和箭头按钮,从列表中选择项目后,默认按钮将根据您的选择进行更改.

这是一段显示下拉菜单的代码,但不是上面描述的完整功能:
<StackPanel Orientation="Horizontal">
<Border CornerRadius="0" BorderBrush="Black" BorderThickness="1">
<Button Name="CreateButton" Click="CreateButton_Click" Background="Transparent" BorderBrush="{x:Null}">
<Image Source="/OMS.Resources;component/Resources/Images/LibraryImages/add1.png" />
<Button.ContextMenu>
<ContextMenu HorizontalAlignment="Right">
<MenuItem Header=" doc" Click="CreateDocButton_Click">
<MenuItem.Icon>
<Image Source="/OMS.Resources;component/Resources/Images/LibraryImages/add_sheet.png" Width="24" Height="24" />
</MenuItem.Icon>
</MenuItem>
<MenuItem Header=" xls" Click="CreateXlsButton_Click">
<MenuItem.Icon>
<Image Source="/OMS.Resources;component/Resources/Images/LibraryImages/add_sheet.png" Width="24" Height="24" />
</MenuItem.Icon>
</MenuItem>
<MenuItem Header=" txt" Click="CreateTxtButton_Click">
<MenuItem.Icon>
<Image Source="/OMS.Resources;component/Resources/Images/LibraryImages/add_sheet.png" Width="24" Height="24" />
</MenuItem.Icon>
</MenuItem>
</ContextMenu>
</Button.ContextMenu>
</Button>
</Border>
<Border CornerRadius="0" BorderBrush="Black" BorderThickness="1">
<Button HorizontalAlignment="Left" VerticalAlignment="Stretch" Background="Transparent" BorderBrush="{x:Null}"
ContextMenuService.IsEnabled="False" Click="AddButtonContextMenu_Click">
<Image Source="/OMS.Resources;component/Resources/Images/LibraryImages/arrow_down.png" VerticalAlignment="Center" Width="9" />
</Button>
</Border>
</StackPanel>
Run Code Online (Sandbox Code Playgroud) c++ ×5
c++11 ×2
button ×1
dreamweaver ×1
g++ ×1
github ×1
inheritance ×1
intersection ×1
linux ×1
mercurial ×1
pointers ×1
pthreads ×1
set ×1
stl ×1
tags ×1
templates ×1
unique-ptr ×1
unix ×1
wpf ×1