Android studio 我们可以在android studio中将音频(.mp3)转换为视频(mp4)吗?怎样

Android studio 我们可以在android studio中将音频(.mp3)转换为视频(mp4)吗?怎样,android-studio,audio,video,android-mediaplayer,converters,Android Studio,Audio,Video,Android Mediaplayer,Converters,我是这方面的新手,我正在开发媒体播放器和录音应用程序。在其中,我在listview中显示了设备的歌曲列表和录制开始/停止/播放。现在我想将.mp3录制的文件转换为.mp4,其中一个图像将代表该文件中的视频显示。帮助我实现这一点我不知道,我参考了许多链接,但我什么也没找到。一切都可以用更好的方式完成,但只要使用您的代码,这将对您有效- #include <iostream> using namespace std; class Swap { private:

我是这方面的新手,我正在开发媒体播放器和录音应用程序。在其中,我在listview中显示了设备的歌曲列表和录制开始/停止/播放。现在我想将.mp3录制的文件转换为.mp4,其中一个图像将代表该文件中的视频显示。帮助我实现这一点我不知道,我参考了许多链接,但我什么也没找到。

一切都可以用更好的方式完成,但只要使用您的代码,这将对您有效-

#include <iostream>

using namespace std;

class Swap  {

    private:
        int a,b,temp;

    public:

        Swap()
        {
            a=10;
            b=20;
            temp=0;
        }

        void swapNums()
        {
            temp=a; a=b; b=temp;
            cout<<a<<" " <<b<<endl;
        }
};

int main() {

    Swap s;
    s.swapNums();

    return 0;
}
可以避免使用类名作为函数名。您可以使用构造函数而不使用返回类型,在这里您可以初始化成员变量。交换方法看起来不错

我无法在类中初始化变量

 class swap
 {
      int a=10; \\cannot declare here
      int b=20; \\ cannot declare here
 }
由于C++11,这很好,您可以使用。 错误是由于}之后缺少分号

为什么它有b的垃圾值

a=b;
b=temp;
temp=a;
由于temp在分配给b之前从未初始化过,所以temp有一个不确定的值。 任何用法都会导致错误

下面是一个简单的交换结构:


在本例中,由于以下原因,默认成员初始化已过时/冗余。

请检查此链接以了解您的第一个问题:

通常构造函数用于将值初始化为类的数据变量

关于第二个问题: 若数据成员在创建对象后未初始化,则它将包含垃圾值。因此,根据您的需要初始化或分配适当的值

检查以下代码:

#include<iostream>
using namespace std;

class swap_values
 {   
    int a, b, temp;
    public:
        swap_values(){
            a=0;b=0;temp=0;
        }
        swap_values(int x, int y){
              a = x;
              b = y;
              temp = 0;
           }

        void swapped()       
        {
            temp = b;
            b=a;
            a=temp;
        }
        void print(){
         cout<<"a: "<<a<<" b: "<<b<<endl;
         }
 };

int main()
{  
   int x =10; int y = 20;
   swap_values obj(x, y);
   obj.print();
   obj.swapped();
   obj.print();

   return 0;
}

Re:第二个示例,只看代码,当您指定b=temp时,temp的值是多少;若你们的答案是,我不知道,你们在一个很好的公司,因为你们的程序也不好。它调用未定义的behaviorit将返回temp变量的值,因为您分配b=temp,然后打印第二个逻辑是错误的。TBH int a=10看起来很好,即使在类中也是如此。导致错误的最小程序是什么?确切的错误是什么?与其问3个糟糕的问题,每个问题都遗漏了很多,不如问1个好问题。这可能有助于你将文章的重点放在一个问题上,并附上一个附带的问题。你以你的类命名一个成员函数???如果你想写一个构造函数:它们没有返回值,即。E你需要放弃空虚。您可能更喜欢针对赋值的初始化器列表:swap:a10,b20{}假设您应该提到,现在有了完整的构造函数,默认初始化变得多余/过时…有人可以帮助解决这个问题吗?有人可以帮助解决这个问题吗?
#include<iostream>
using namespace std;

class swap_values
 {   
    int a, b, temp;
    public:
        swap_values(){
            a=0;b=0;temp=0;
        }
        swap_values(int x, int y){
              a = x;
              b = y;
              temp = 0;
           }

        void swapped()       
        {
            temp = b;
            b=a;
            a=temp;
        }
        void print(){
         cout<<"a: "<<a<<" b: "<<b<<endl;
         }
 };

int main()
{  
   int x =10; int y = 20;
   swap_values obj(x, y);
   obj.print();
   obj.swapped();
   obj.print();

   return 0;
}