小编RDX*_*RDX的帖子

适用于iOS iPhone的ICE,STUN,TURN库

我需要在两个用户之间建立P2P UDP和TCP连接.他们都是NAT的背后.一点研究让我想到了STUN,TURN和ICE.

  1. 有没有支持相同的开源iOS(库)?

  2. iPhone中的FaceTime也使用ICE,STUN,TURN到NAT遍历,iOS SDK也暴露了这样的API吗?

  3. 我在resiprocate源代码(www.resiprocate.org)中找到了nICRr代码,我可以在Mac OS X上测试STUN部分.有没有人尝试过使用相同的iOS 4.0或更高版本?

谢谢,罗德尼

iphone nat stun turn

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

写入全局变量的顺序

在下面的程序中,我调用一个函数foo()来设置一个全局变量i ,然后调用构造函数class A,其中i也应该设置,但是10.但是我的程序输出是3 0,你能解释一下吗?

#include <iostream>

int i;

class A
{
    public:
        ~A()
        {
            i=10;
        }
};

int foo()
{
    i = 3;
    A ob;
    return i;
}

int main()
{

    std::cout << "i = " << foo() << " " << i << "\n";
}
Run Code Online (Sandbox Code Playgroud)

c++ constructor global-variables

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

如何从 Javascript 中的现有对象创建新对象?

使用 JavaScript 应用程序,需要帮助从 ajax 调用收到的响应创建新对象。

接收到的输出是对象数组,示例格式如下:

{
  "items": [
    {
      "id": "02egnc0eo7qk53e9nh7igq6d48",
      "summary": "Learn to swim",
      "start": {
        "dateTime": "2017-03-04T19:00:00+05:30"
      }
    }        

]
}
Run Code Online (Sandbox Code Playgroud)

但是,我的组件需要以下格式的 JS 对象:

{
id: "e1",
title: "Express",
start: "Jan 13, 2010",
description: "Jan 13, 2010"
}
Run Code Online (Sandbox Code Playgroud)

以下方法是否正确,请提出更好的方法(如果有)

{
  "items": [
    {
      "id": "02egnc0eo7qk53e9nh7igq6d48",
      "summary": "Learn to swim",
      "start": {
        "dateTime": "2017-03-04T19:00:00+05:30"
      }
    }        

]
}
Run Code Online (Sandbox Code Playgroud)

javascript json

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

va_args解析中的分段错误

为什么下面的代码给出了EXC_BAD_ACCESS, could not access memory

int combine_strings(char **outputStr,...)
{
    va_list ap;
    char *s, *out=0;
    int len=0;

    va_start(ap,outputStr);
    while(s=va_arg(ap,char *))
    {
      len+=strlen(s);
    }
    va_end(ap);


    if(!(out=malloc(len+1)))
        exit(1);

    *outputStr=out;

    va_start(ap,outputStr);
    while(s=va_arg(ap,char *))
    {
      len=strlen(s);
      memcpy(out,s,len);
      out+=len;
    }
    va_end(ap);

    *out=0;

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

c malloc variadic-functions segmentation-fault

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

C运算符优先级,增量后编程问题

有人可以解释为什么程序的输出是

0 1 1 3 1

void main(void)
{
      int i=-1,j=0,k=1,l=2,m;

      m=i++&&j++&&k++||l++;

      printf("%d %d %d %d %d",i,j,k,l,m);

}
Run Code Online (Sandbox Code Playgroud)

主要关注的是"为什么k不增加".

FYI ..我正在用VC++编辑器Windows 7 32位编译程序.提前谢谢了.

c operators operator-precedence post-increment

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

Android:一个接一个播放两种声音

我正在尝试播放两个声音项目,一个接一个

MediaPlayer mp        = null;

 protected void produceErrorSound(int index) {
        if (mp != null) {
            mp.reset();
            mp.release();
        }


        mp = MediaPlayer.create(this, index);

        mp.start();
    }


public void correctAnswerAndNext(){
    produceErrorSound(R.raw.right1) ;
    produceErrorSound(R.raw.right1) ;
}
Run Code Online (Sandbox Code Playgroud)

但只产生第二个声音。有什么替代方法吗?

android media-player android-mediaplayer

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

Android Admob没有足够的空间来展示广告

使用了admob站点中提供的代码

这是我的xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/background_img"
    android:orientation="vertical"
    android:id="@+id/atozlayout"
     >
<GridView 
    android:id="@+id/gridView1"
    android:numColumns="auto_fit"
    android:gravity="center"
    android:columnWidth="55dp"
    android:stretchMode="columnWidth"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"    
    android:horizontalSpacing="10dp"
   android:verticalSpacing="10dp"  

    >

</GridView>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

但是logcat显示了E/Ads(4244):没有足够的空间来展示广告!想要:<480,75>,有:<800,0>

似乎布局正在创建问题.请提出修复方法.非常感谢.

android space admob android-linearlayout android-xml

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

在Android drawables文件夹中存储图像的位置?

我正在开发Android应用程序,应该支持2.1直到最新的Android OS(4.2)版本.目前我的图像库模块中只显示少量图像.我需要在所有支持操作系统的设备(智能手机和平板电脑)上支持我的应用程序,范围从2.1到4.2(最新).

每张图像大小分别为368X387,每张50 KB,PNG类型

我的工作区res包含以下可绘制文件夹:

drawable-hdpi
drawable-ldpi
drawable-mdpi
drawable-xdpi
Run Code Online (Sandbox Code Playgroud)

我有些困惑

  1. 我应该在哪个文件夹中存储图像,这有什么关系?

  2. 我是否需要为不同类型的设备提供不同的基于分辨率的图像?

谢谢.

android image hdpi mdpi android-drawable

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

C++按位副本对象失败?为什么?

这个问题是关于类对象的按位复制.为什么没有调用构造函数,而是在下面的代码中调用析构函数?输出为

HowMany h2 = f(h); //没有构造函数get; s在这里调用..

after construction of h: objectCount = 1
x argument inside f(): objectCount = 1
~HowMany(): objectCount = 0
after call to f(): objectCount = 0
~HowMany(): objectCount = -1
~HowMany(): objectCount = -2




class HowMany {
    static int objectCount;
public:
    HowMany() { objectCount++; }
    static void print(const string& msg = "") {
        if(msg.size() != 0) cout << msg << ": ";
        cout << "objectCount = "
            << objectCount << endl;
    }
    ~HowMany() { …
Run Code Online (Sandbox Code Playgroud)

c++ bit-manipulation copy-constructor

0
推荐指数
1
解决办法
498
查看次数

C++运算符重载构造函数

有人可以解释下面的程序如何成为"AabAabAab .."的infinte循环.

#include "stdafx.h"
#include <iostream>

using namespace std;

class Base {
public:
    Base(int j=1):i(j)
    {cout<<"B";}
private:
    int i;
};

class Case{
public:
    Case(int j=1):i(j) {cout<<"A";}
    operator Base() { cout<<"ab"; return *(new Case); }
private:
    int i;
};

int main()
{
    Base obj = Case();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ constructor operator-overloading

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

C++:朋友作为课堂上的主要人物

主要功能可以在C++中成为好友功能吗?

 #include "stdafx.h"
#include <iostream>
using namespace std;
class A {
public:
    A():i(10){}
private:
    int i;
    friend int main();
};

int main()
{
    A obj;
    cout<<obj.i;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ constructor class friend

-3
推荐指数
1
解决办法
264
查看次数