小编MBy*_*ByD的帖子

如何避免在实现中重复类名和模板调用?

我发现下面的代码非常难以阅读,我写了它!有没有

  1. 避免为每个实现的成员函数调用模板
  2. 避免ClassName::member_function_name为每个实现的成员函数?我在这方面找到了Java DRYer.你不要到处重复类名.

谢谢!

template <class KeyType, class ObjectType>
class Vertex
{
private:
    KeyType key;
    const ObjectType* object;
public:
    Vertex(const KeyType& key, const ObjectType& object);
    const KeyType getKey();
};

template <class KeyType, class ObjectType> 
class Graph
{
private:
    map<KeyType, Vertex<KeyType, ObjectType> > vertexes;
public:
    const Vertex<KeyType, ObjectType>& createVertex(const KeyType& key, const ObjectType& object);
};

template <class KeyType, class ObjectType>
Vertex<KeyType, ObjectType>::Vertex(const KeyType& objectKey, const ObjectType& newObject)
{
    key = objectKey;
    object = &newObject;
};

template <class KeyType, …
Run Code Online (Sandbox Code Playgroud)

c++ implementation templates

5
推荐指数
1
解决办法
985
查看次数

如何为SQLite执行增量备份?

我有一个程序将日志记录数据保存到SQLite3数据库.我想在程序仍在运行时备份数据库.我已经通过使用SQLite在线备份API(http://www.sqlite.org/backup.html)完成了这项工作并且工作正常,但是在备份完成之前它会滞后于进程...

有谁知道在SQLite中进行增量备份的方法?我最好只备份新数据,而不是每次运行备份时备份整个数据库.

c sqlite backup database-backups

5
推荐指数
1
解决办法
2159
查看次数

使用反射/内省调用具有未知数量参数的选择器

最近我在java(for android)中编写了一个应用程序,它使用反射来调用某些对象的方法.参数号和类型是未知的,这意味着,我有一个统一的机制,它接收一个对象名,方法名和参数数组(使用JSON),并使用参数数组(Object [])调用指定对象上的指定方法充满了所需类型的参数).

现在我需要为iOS实现相同的功能,当我知道选择器期望的参数数量时,我能够调用选择器:

SEL selector = NSSelectorFromString(@"FooWithOneArg");
[view performSelectorInBackground:selector withObject:someArg];
Run Code Online (Sandbox Code Playgroud)

我知道我可以通过使用获得选择器接收的参数数量

int numberOfArguments = method_getNumberOfArguments(selector);
Run Code Online (Sandbox Code Playgroud)

但有没有办法像这样进行通用调用:

[someObject performSelector:selector withObject:arrayOfObjects]
Run Code Online (Sandbox Code Playgroud)

这几乎与Java相当

someMethod.invoke(someObject, argumentsArray[]);
Run Code Online (Sandbox Code Playgroud)

我想根据选择器获取的参数数量来避免切换情况.

对不起,我只是想尽可能清楚地提出问题.

reflection introspection objective-c ios

5
推荐指数
1
解决办法
4568
查看次数

如何为平板电脑和移动设备创建应用程序

我想创建一个支持Android设备的移动和平板电脑版本的应用程序.我喜欢上传一个apk文件到Android市场来实现这一目标.

它的工作原理如下.

  1. 对于移动设备,此应用程序将使用小UI
  2. 对于使用蜂窝梳以外的平板电脑,使用不同的UI,使用更大的屏幕
  3. 由Honeycomb驱动的平板电脑将具有支持其特殊功能的不同UI

我怎么能这样做.如果我错了,请更正我.

此致,Kariyachan

user-interface android tablet

5
推荐指数
1
解决办法
3647
查看次数

如何在Java Swing中为多个按钮添加多个ActionListener

我知道如何为它创建一个按钮和一个动作监听器.但是我希望它们有几个按钮和actionListeners,它们可以执行彼此无关的单独操作.

例:

protected JButton x;

x = new JButton("add");
x.addActionListener(this);

public void actionPerformed(ActionEvent evt) { //code.....}
Run Code Online (Sandbox Code Playgroud)

现在我想要其他按钮可能有不同的功能,如减法,乘法等,请建议.谢谢

java swing

5
推荐指数
4
解决办法
6万
查看次数

如何从android中的url播放音频文件

我需要在我的应用程序中播放远程服务器的音频文件.当我使用localhost服务器(使用WAMP)测试时,我可以玩.当从服务器提供相同的文件时它不工作..文件没有扩展名,内容是MP3

String fileUrl = "http://192.168.1.131/myproject/songs/xyz";
String url = "http://myserver/songs/xyz"; //(myserver -> A remote server)
mVideoView.setVideoURI(Uri.parse(fileUrl));
mVideoView.requestFocus();
Run Code Online (Sandbox Code Playgroud)

此外,我需要更好地控制玩家.
请帮忙...

android audio-streaming audio-player

5
推荐指数
3
解决办法
3万
查看次数

单行的fprintf命令是线程安全的吗?

我正在使用openmp,我的程序如下所示:

\#pragma omp parallel for

for(x = 0, y = 0, x < 5, x++, y++)

     function(x, y, fp);

void function(int x , int y, FILE* fp);
{
   fprintf(fp, "(%d, %d)\n", x y);
}
Run Code Online (Sandbox Code Playgroud)

我希望文件的内容为

(0, 0)
(2, 2)
(1, 1)
(3, 3)
(4, 4)
Run Code Online (Sandbox Code Playgroud)

排序无关紧要,但坐标x,y应按顺序排列,即程序不应生成类似(2,3)的内容.这种行为总是得到保证吗?我在linux上使用gcc编译器.

c openmp

5
推荐指数
1
解决办法
1234
查看次数

set visible和show方法之间的区别

在AWT包的方法有setVisible():show()这不相同的操作,其中,它实际上得到不同?

java swing awt

5
推荐指数
2
解决办法
3717
查看次数

使用iOS类别创建新颜色

我想创建一些UIColor在我的应用程序中使用的新s.RGB有时会略微调整(确切的色调正在争论中)

目前我必须从RGB创建新的颜色,代码遍布并重复.

有没有更好的方法,我可以创建一个新的颜色,并通过我的应用程序使用它.

[UIColor myNewCustomRedColor]
Run Code Online (Sandbox Code Playgroud)

这里最好的模式是什么 - 类别是正确的选择 - 如果是这样的话?如果没有 - 建议的方法是什么.

categories uicolor ios

5
推荐指数
2
解决办法
2311
查看次数

SwingUtilities.invokeLater()

在我的方法doWork()我打电话

SwingUtilities.invokeLater(new Runnable(){
public void run() {
button.setBackgroundColor(Color.red);
}
});
Run Code Online (Sandbox Code Playgroud)

然后我打电话

SwingUtilities.invokeLater(new Runnable(){
public void run() {
button.setBackgroundColor(Color.blue);
}
});
Run Code Online (Sandbox Code Playgroud)

问题是按钮是红色然后是蓝色,还是蓝色然后是红色?

swing colors button

4
推荐指数
1
解决办法
1604
查看次数