小编ben*_*wad的帖子

NSSet到NSArray转换调用objectAtIndex?

我正在尝试通过删除可见区域外的所有注释来更新MKMapView,并在可见区域内添加和删除一些注释.这是我的代码:

NSSet *visibleAnnotations = [mapView annotationsInMapRect:[mapView visibleMapRect]];
NSSet *allAnnotations = [NSSet setWithArray:[mapView annotations]];
NSMutableSet *nonVisibleAnnotations = [NSMutableSet setWithSet:allAnnotations];
[nonVisibleAnnotations minusSet:visibleAnnotations];
[mapView removeAnnotations:(NSArray *)nonVisibleAnnotations];

NSMutableSet *newAnnotations = [NSMutableSet setWithArray:[_zoomLevels objectAtIndex:clusterLevel]];
[newAnnotations minusSet:visibleAnnotations];
[mapView addAnnotations:(NSArray *)newAnnotations];
Run Code Online (Sandbox Code Playgroud)

这给了我错误- [__ NSCFSet objectAtIndex:]:在我将newAnnotations转换为NSArray的最后一行之后发送到实例0x13cd40的无法识别的选择器然后添加注释.是否有关于将数组转换为集合导致此问题的内容?如果是这样,有没有办法围绕它?

objective-c nsarray nsset mkmapview ios

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

前向声明模板类时"未定义模板的隐式实例化"

我有一些代码,我需要向前声明一个模板类(或者至少,前向声明会让事情变得更容易......).我写了一个我正在解决的问题的简化版本,所以我可以在这里显示它:

template<bool>
class MyTemplateClass;

int main( int argc, char* argv[] )
{
    MyTemplateClass<false> myTemp;  // error here
    myTemp.GetTheValue();
    return 0;
}

template<bool bShouldMult>
class MyTemplateClass
{
    int m_myint;
    float m_myfloat;

public:
    MyTemplateClass() : m_myint(5), m_myfloat(3.0f) {}
    float GetTheValue()
    {
        return m_myint * (bShouldMult ? m_myfloat : 1.0f);
    }   

};
Run Code Online (Sandbox Code Playgroud)

我在注释行中得到的错误是:

Error - implicit instantiation of undefined template 'MyTemplateClass<false>'
Run Code Online (Sandbox Code Playgroud)

我需要在MyTemplateClass的前向声明中包含哪些其他细节?由于错误不是来自下一行,我假设它不是由于该方法未定义的事实.我正在使用的编译器是LLVM/CLang,我正在Mac上编译.

c++ templates clang forward-declaration

29
推荐指数
2
解决办法
6万
查看次数

通过索引获取__m128的成员?

我有一些代码,最初是由MSVC工作人员给我的,我正试图让它在Clang上工作.这是我遇到麻烦的功能:

float vectorGetByIndex( __m128 V, unsigned int i )
{
    assert( i <= 3 );
    return V.m128_f32[i];
}
Run Code Online (Sandbox Code Playgroud)

我得到的错误如下:

Member reference has base type '__m128' is not a structure or union.
Run Code Online (Sandbox Code Playgroud)

我环顾四周,发现Clang(也许是GCC)在将__m128视为结构或联合时遇到了问题.但是我还没有找到一个直接的答案,我怎么能得到这些价值.我已经尝试过使用下标运算符而无法做到这一点,我已经浏览了大量的SSE内在函数列表并且尚未找到合适的函数.

c++ sse simd clang intrinsics

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

在C中循环时,Scanf会相互跳过

我正在尝试开发一个简单的基于文本的刽子手游戏,并且主游戏循环以提示输入每个字母的猜测开始,然后继续检查字母是否在单词中并且如果它生命关闭不是.但是,当我运行游戏时,每次提示两次,程序不会等待用户的输入.它也会夺去生命(如果它是正确的输入就会有一个生命,如果没有,则为两个生命),所以无论它采取的是什么都与之前的输入不同.这是我的游戏循环,简化了一下:

while (!finished)
{
    printf("Guess the word '%s'\n",covered);

    scanf("%c", &currentGuess);

    i=0;
    while (i<=wordLength)
    {
        if (i == wordLength)
        {
            --numLives;
            printf("Number of lives: %i\n", numLives);
            break;
        } else if (currentGuess == secretWord[i]) {
            covered[i] = secretWord[i];
            secretWord[i] = '*';
            break;
        }
        ++i;
    }

    j=0;
    while (j<=wordLength)
    {
        if (j == (wordLength)) {
            finished = 1;
            printf("Congratulations! You guessed the word!\n");
            break;
        } else {
            if (covered[j] == '-') {
                break;
            }
        }
        ++j;

        if (numLives == 0) {
            finished = …
Run Code Online (Sandbox Code Playgroud)

c gcc scanf

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

动画删除注释

我有一个地图和一组注释,每个都有一个'父'属性.目前,当我添加注释时,我实现了didAddAnnotationViews方法来为这些注释设置动画,使它们看起来像是来自父级的坐标.在删除注释期间有没有办法做到这一点?当我从地图中删除注释时,我希望它为其父坐标设置动画,据我所知,当删除注释时,didAddAnnotationViews没有等效物.

objective-c mkmapview mkannotation mkannotationview ios

13
推荐指数
2
解决办法
6676
查看次数

Java中的继承 - "找不到符号构造函数"

我正在从一个继承自另一个类的类,但我收到一个编译错误,说"找不到符号构造函数Account()".基本上我要做的是创建一个类别的InvestmentAccount,它来自账户 - 账户是为了与取款/存款方法保持平衡,而InvestmentAccount类似,但余额存储在股票中,股票价格决定如何在给定特定金额的情况下,许多股票被存入或取出.这是子类InvestmentAccount的前几行(编译器指出问题的位置):

public class InvestmentAccount extends Account
{
    protected int sharePrice;
    protected int numShares;
    private Person customer;

    public InvestmentAccount(Person customer, int sharePrice)
    {
        this.customer = customer;
        sharePrice = sharePrice;
    }
    // etc...
Run Code Online (Sandbox Code Playgroud)

Person类保存在另一个文件(Person.java)中.现在这里是超类帐户的前几行:

public class Account 
{
    private Person customer;
    protected int balanceInPence;

    public Account(Person customer)
    {
        this.customer = customer;
        balanceInPence = 0;
    }
    // etc...
Run Code Online (Sandbox Code Playgroud)

有没有理由为什么编译器不只是从Account类中读取Account的符号构造函数?或者我是否需要在InvestmentAccount中为Account定义一个新的构造函数,它告诉它继承所有内容?

谢谢

java polymorphism inheritance

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

YouTube嵌入UIWebViews不再适用于iOS

我有一段时间的应用程序使用UIWebViews在某些视图上显示YouTube视频.今天,在没有对代码进行任何更改的情况下,我的用户开始抱怨YouTube嵌入不起作用:嵌入静止帧和播放按钮显示正常,但点击播放按钮时嵌入屏幕变黑,没有任何加载,没有声音或视频.

以下是我用于生成嵌入代码的功能,该代码可以UIWebView从YouTube ID中输入:

+ (NSString*)codeForYouTubeID:(NSString*)videoID width:(NSUInteger)width height:(NSUInteger)height
{
    static NSString *fmt =
    @"<iframe width='%d' height='%d' src='http://www.youtube.com/embed/%@?showinfo=0&modestbranding=1&rel=0&showsearch=0' frameborder='0' scrolling='0' allowfullscreen></iframe>";

    return [NSString stringWithFormat:fmt, width, height, videoID];
}
Run Code Online (Sandbox Code Playgroud)

将生成的代码放入JSFiddle,嵌入显示并播放正常.我还使用了以下具有相同结果的替代格式字符串(来自此处的StackOverflow答案):

static NSString *fmt =
@"<object>\
    <param name=\"movie\" value=\"http://www.youtube.com/v/%@\"></param>\
    <embed src=\"http://www.youtube.com/v/%@\" type=\"application/x-shockwave-flash\"></embed>\
</object>";
Run Code Online (Sandbox Code Playgroud)

这具有相同的结果,但具有笨拙的自动大小嵌入.行为是相同的:用户可以单击播放按钮,然后嵌入框架变黑,没有其他任何事情发生.对我来说,这发生在我的测试手机(iPhone 4,iOS 7)和模拟器(iOS6和7)上.这在今天之前没有发生,并且没有代码被更改.最近有没有其他人经历过这个?

embed youtube iphone uiwebview ios

10
推荐指数
1
解决办法
6184
查看次数

Haskell:编写文本文件并将其解析回原始格式

我有一个格式[(String,String)]的元组列表,我需要一个函数将列表的内容写入文本文件,然后另一个函数将该文本文件作为相同的元组列表读取.这是我的保存功能:

save :: Table -> IO()
save [] = writeFile "database.txt" ""
save zs = do { writeFile "database.txt" "" ; sequence_ [appendFile "database.txt" ("("++a++","++b++")\n") | (a,b) <- zs] }
Run Code Online (Sandbox Code Playgroud)

这是文本文件的好格式吗?那么我怎样才能读取该文本文件并将其转换回元组列表?

parsing haskell file

8
推荐指数
2
解决办法
7358
查看次数

Android:使用图片自定义离线地图

我正在尝试构建一个应用程序,可以使用存储在应用程序中的图像显示地图,具有Google地图的大部分功能,但使用此自定义图像而无需连接以获取地图图块.我正在寻找的主要方法是显示一个图像,用户可以在其中进行缩放,拖动以移动并单击叠加.我还将尝试根据纬度/经度坐标向地图添加叠加并显示用户的位置,但这不应该太难,因为我可以在地图上定义一个纬度/经度点并计算其中的所有其他点.有谁知道我可以用来显示这样的地图吗?

maps android android-imageview

8
推荐指数
0
解决办法
1239
查看次数

记录和崩溃堆栈跟踪未在Android Studio中显示

我正在尝试在我的设备上调试应用程序,我在使用调试器时遇到了一些麻烦.我尝试测试记录器,看它是否会像这样写入Logcat:

Log.d("MyActivity", "Testing logging...");
Run Code Online (Sandbox Code Playgroud)

但是在Logcat中没有任何东西显示app: com.myapp.debug过滤器.它出现时我只是按字符串过滤(使用我的应用程序名称),但条目如下所示:

01-08 13:45:07.468  29748-29748/? D/MyActivity? Testing logging...
Run Code Online (Sandbox Code Playgroud)

这个问号是否意味着应用程序中的某些内容没有传递给调试器?这可能与我调试器的第二个问题有关:

我一直在调试崩溃,每次发生时,手机只会显示"应用程序没有响应"消息,然后关闭当前活动,断开调试器连接,应用程序继续运行上一个活动.没有堆栈跟踪,没有关于崩溃的信息,没有.我需要在Android Studio中设置一些东西以使其正常工作吗?

java debugging android android-studio

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