Wesley13 Wesley13
3年前
SDL音频播放编程
       在使用SDL进行音频解码的时候涉及到一个回调函数,这里有点复杂,初学不容易搞明白,做点记录。1SDL\_AudioSpec结构体与SDL\_OpenAudio()函数简单地说,SDL\_AudioSpec结构体中是与SDL进行音频解码相关的参数的一个结构体。文档中内容如下;SDL_AudioSpecNa
Wesley13 Wesley13
3年前
go 语言结构体
转自:http://qingkechina.blog.51cto.com/5552198/1671463当我第一次接触到C语言时,就对结构体投入了极大的兴趣,认为这个东西以后大有作为,后来接触Java、C,面向对象编程中的对象进入我的视线,经过了这么多年的磨练,回过头来再看结构体依旧是那么亲切;同时从另一个角度上看结构体与面向对象中的成员对象
Wesley13 Wesley13
3年前
DLL 函数中使用结构体指针作函数参数(C# 调用 C++ 的 DLL)
存在的问题:问题1:C与C同样定义的结构体在内存布局上有时并不一致;问题2:C中引入了垃圾自动回收机制,其垃圾回收器可能会重新定位指针所指向的结构体变量。解决方案:问题1方案:强制指定C、C结构体的内存布局,使其一致(两者都固定为:结构体的成员按其声明时出现的顺序依次布局,结构体成员的内存对齐为1字节对齐);为题
Wesley13 Wesley13
3年前
GO值类型与引用类型
值类型值类型包括基本数据类型,int,float,bool,string,以及数组和结构体(struct)。值类型变量声明后,不管是否已经赋值,编译器为其分配内存,此时该值存储于栈上。值类型的默认值:varaint//int类型默认值为0varbstring//string类型默认值为n
Stella981 Stella981
3年前
AVIOInterruptCB结构体分析
1AVIOInterruptCB结构体定义在/usr/include/libavformat/avio.h中有如下的结构体定义,根据头文件中的注释:这是一个回调函数和参数的结构体。有些函数是在阻塞的,用这个回调函数来检查是否中断这个阻塞函数,如果回调函数返回1,那么这个正在阻塞的操作将被中止。那么就用这个结构体里的参数opaque来回调其中的callb
Easter79 Easter79
3年前
Swift讲解专题十二——方法
Swift讲解专题十二——方法一、引言      方法只是一个术语,其实就是将函数与特定的类型结合,类、结构体、枚举都可以定义方法,方法又分为实例方法和类型方法,类型方法类似于ObjectiveC中的类方法。Swift和ObjectiveC的一大不同是,ObjectiveC只有在类中可以定义方法。
Stella981 Stella981
3年前
FFMPEG结构体分析:AVCodec
注:写了一系列的结构体的分析的文章,在这里列一个列表:FFMPEG结构体分析:AVFrame(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fblog.csdn.net%2Fleixiaohua1020%2Farticle%2Fdetails%2F14214577)FFMPE
Stella981 Stella981
3年前
Rust编程进阶:003、在结构体和方法中使用泛型
3、在结构体中使用泛型。//在结构体中使用泛型derive(Debug)structPoint<T{x:T,y:T,}derive(Debug)structPoint2<T,U{x:T,
Wesley13 Wesley13
3年前
Go 函数方法
   在Go语言中,函数和方法不太一样,有明确的概念区分。其他语言中,比如PHP函数就是方法,方法就是函数,但在Go语言中,函数是不属于任何结构体、类型的方法,也就是说函数是没有接收者的;而方法是有接收者的,我们所说的方法要么属于一个结构体的,要么属于一个新定义的类型的函数函数和方法,虽然概念不同,但是定义非常相似
Stella981 Stella981
3年前
Linux 内核链表 list.h 的使用
C语言本身并不自带集合(Collection)工具,当我们需要把结构体(struct)实例串联起来时,就需要在结构体内声明指向下一实例的指针,构成所谓的“链表”。而为了实现对链表的操作,我们需要另外实现一系列的函数,例如添加、删除、搜索、复制等等。而利用Kernel源代码中自带的list.h,则可以方便地实现任意类型结构体的串联。编程需求