我的问题很简单.我们何时需要默认构造函数?请参考以下代码:
class Shape
{
int k;
public:
Shape(int n) : k(n) {}
~Shape() {}
};
class Rect : public Shape
{
int l;
public:
Rect(int n): l(n)
{} //error C2512: 'Shape' : no appropriate default constructor available
~Rect() {}
};
Run Code Online (Sandbox Code Playgroud)
为什么编译器不会在类Rect中隐式生成零参数默认构造函数?
据我所知,如果一个类(Rect)派生自另一个具有默认构造函数(隐式生成或显式提供)的类(Shape),则默认构造函数应由编译器生成.
我有一个单一的View应用程序UIViewController.然后我UITableViewController通过IB 添加一个,我试图UITableViewController通过按钮显示UIViewController(我的主视图).我按下按钮(IBAction)包含以下代码,我试图通过该代码推送我的UITableViewController视图并显示它:
DataViewController *dataController = [[DataViewController alloc] initWithNibName: @"DataViewController" bundle:nil];
[self.navigationController pushViewController:dataController animated:YES];
[dataController release];
Run Code Online (Sandbox Code Playgroud)
我DataViewController根本没有被推入堆栈并显示,我也检查过上面的代码,self.navigationController=nil
可能这是问题的根源.如果是这样,如何纠正呢?
请帮忙.
编辑原始问题,因为我想问问题std::map,而不是std::vector.我的错.抱歉.
我的数据实际上是2 std::map秒.我想将两张地图合并到第三张地图中.
我的第一张和第二张地图包含具有相同键的条目.所以我想将这些键下的数据合并到我生成的第3张地图中.
所以如果我使用std::merge,我会丢失第一个或第二个地图常用条目中的数据吗?正如我所提到的,两张地图都有共同的数据(值)?
在关于STL的一篇C++文章中,有人说 -
由于容器适配器不支持迭代器,因此它们不能与STL算法一起使用.
但它没有解释为什么容器适配器不支持迭代器?任何人都可以解释我一样吗?
我试图以毫秒为单位获得系统时间.为此,我宣布:
NSNumber *createdTimeInMilliSec; //in class declaration
Run Code Online (Sandbox Code Playgroud)
在我的一个实例函数中,我在做:
self.createdTimeInMilliSec= ([NSDate timeIntervalSinceReferenceDate]*1000); //ERROR: incompatible type for argument 1 of 'setCreatedTimeInMilliSec:'
Run Code Online (Sandbox Code Playgroud)
timeIntervalSinceReferenceDate返回NSTimeInterval,所以如何将其转换为NSNumber?或者我做错了什么?
对于下面的C++代码,我收到编译器错误:
class Mkt
{
int k;
public:
Mkt(int n): k(n)
{
throw;
}
~Mkt()
{
cout<<"\n\nINSIDE Mkt DTOR function:\t"<<endl;
}
void func1()
{
cout<<"\n\nINSIDE FUNC1 function....value of k is:\t"<<k<<endl;
}
};
int main(int argc, char* argv[] )
{
try
{
std::auto_ptr<Mkt> obj(new Mkt(10)); //no implicit conversion
obj.func1(); //error C2039: 'func1' : is not a member of 'std::auto_ptr<_Ty>'
}
catch(...)
{
cout<<"\n\nINSIDE EXCEPTION HANDLER..........."<<endl;
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我无法理解为什么我收到错误C2039?我正在使用VS 2008编译器.
请帮忙.谢谢
就像EnumChildWindowsAPI一样,想知道是否可能相反......即,如果有一种技术或API来枚举子窗口的所有父窗口,并最终到达主应用程序窗口.
我的问题是我有多个不同的应用程序具有相同的子窗口(可通过窗口类和标题识别).我想一次检测哪个特定于应用程序的子窗口处于活动状态,或者两者是否处于活动状态是否可以与任何一个一起使用?
例如,我有两个运行的应用程序,名为"XYZ"和"ABC",两个都有一个具有相同注册的子窗口/对话框.类和标题说 - "配置".现在我想从"XYZ"应用程序中获取"配置"对话框的窗口详细信息?
希望我能够正确地呈现问题详情.
谢谢,