C语言实现面向对象方法学的GLib、GObject-初体验
0. 扫盲:
GLib是用C写的一些utilities,即C的工具库,和libc/glibc(GNU C Library)没有关系。
GLib是 Gtk+ 库和 Gnome 的基础。GLib可以在多个平台下使用,比如 Linux、Unix、Windows 等。GLib为许多标准的、常用的 C 语言结构提供了相应的替代物。
GLib是GTK+的基础库,它由基础类型、对核心应用的支持、实用功能、数据类型和对象系统五个部分组成。
它是一个综合用途的实用的轻量级的C程序库,它提供C语言的常用的数据结构的定义、相关的处理函数,有趣而实用的宏,
可移植的封装和一些运行时机能,如事件循环、线程、动态调用、对象系统等的API。
PS: glibc 、ANSI C、glib别搞混
glibc是linux下面c标准库的实现,即GNU C Library。glibc本身是GNU旗下的C标准库,后来逐渐成为了Linux的标准c库,而Linux下原来的标准c库Linux libc逐渐不再被维护。
Linux下面的标准c库不仅有这一个,如uclibc、klibc,以及上面被提到的Linux libc,但是glibc无疑是用得最多的。glibc在/lib目录下的.so文件为libc.so.6。
GLib,和libc、glibc没有半毛钱关系。
GObject依赖Glib,GObject原来是GTK+的一部分, 在GTK+ 2.0中将与GUI不相关的部份都移到了GObject里,从此GObject诞生;
现在,GObject源码包含在Glib源码里,构成GLib的对象系统。
有了GObject,就可以使用C语言来完成面向对象的框架。
1. Glib下载
这个过程还是相当复杂的,一堆的依赖。不好搞。
记录相关博文:
https://www.cnblogs.com/pcat/p/5520317.html glib源码安装使用方法
http://www.voidcn.com/article/p-uqycertd-cu.html glib2.40库的安装与移植(for arm)
写不下去了...
马保国:大意了大意了!
文末 -- 资源推荐
GObject学习专栏
https://blog.csdn.net/knowledgebao/article/details/84633798
.
C语言实现面向对象方法学的GLib、GObject-初体验的更多相关文章
- 我的Go语言学习之旅二:入门初体验 Hello World
好吧,全部的程序猿们都已经习惯了.学习不论什么一门语言,我们都会以Hello World实例開始我们的学习,我也不例外.先来一个简单的样例 打开编辑器 (能够用记事本,我已经习惯 Notepad++了 ...
- go语言的初体验
分享最近学习 Go 语言的心得和体会,适合有编程基础的人,因为这里只做经验性的总结概述,不做基础教学的入门知识讲解,如果想要学习编程语言的基础知识,请出门左转进入官方文档,查看基础教学文档. Go 概 ...
- kotlin语言使用初体验(一)
居说谷歌新认的干儿子kotlin极为受宠,隐隐有替代Java在 android平台老大位置的趋势.kotlin有谷歌撑腰,加上自己的底子也厚,再之与Java无缝兼容,将来在流行的编程语言中占有一席之地 ...
- (转)Delphi2009初体验 - 语言篇 - 智能指针(Smart Pointer)的实现
转载:http://www.cnblogs.com/felixYeou/archive/2008/08/27/1277250.html 快速导航 一. 回顾历史二. 智能指针简介三. Delphi中 ...
- golang语言初体验
Go(又称 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 开发的一种静态强类型.编译型语言.Go 语言语法与 C 相近,但功能上 ...
- go语言初体验
go下载地址: http://code.google.com/p/go/downloads/list go官方安装地址: http://golang.org/doc/install 另外收集一些关于g ...
- SpringCloud初体验:五、Sidecar 将 PHP 这类非 Java 生态语言的服务接入 Spring Cloud
先起一个 Sidecar 服务,一个PHP服务一个应用,和PHP服务部署在同一台机子,通过 localhost 访问,这样就解决了网络开销,相当于本地进程间调用 Sidecar 服务比较简单, 1.这 ...
- 实验1 C语言开发环境使用和编程初体验
#include <stdio.h> #include <stdlib.h> int main() { printf ("202083290273\n2020 ,wh ...
- Swift语言实战晋级
Swift语言实战晋级基本信息作者: 老镇 丛书名: 爱上Swift出版社:人民邮电出版社ISBN:9787115378804上架时间:2014-12-26出版日期:2015 年1月开本:16开页码: ...
- 01_C语言基础
内容提要: 1. C语言概述2. 数据类型.运算符与表达式3. C语言程序结构 4. VC6.0使用练习 知识详解01:C语言的历史 1. C语言与其它语言比较 汇编语言: (1).可直接对硬件进行操 ...
随机推荐
- 【Half-Life】 Steam 安装半条命模组
安装办法参考自B站UP主[百科全叔]的文章 https://www.bilibili.com/read/cv543926 半条命模组在ModDB站上下载资源 https://www.moddb.com ...
- 【Docker】06 部署挂载本地目录的Nginx
1.拉取Nginx镜像: docker pull nginx:1.19 2.生成一个测试的Nginx容器: docker run --rm --name nginx-test -p 8080:80 - ...
- 【Zookeeper】03 单机操作
访问Zookeeper 开启Zookeeper服务程序: ./zkServer.sh start 启动Zookeeper客户端进行访问: ./zkCli.sh 运行打印: [root@VM-0-7-c ...
- 从.net开发做到云原生运维(三)——.net core的学习路线
1. 前言 前面几篇文章主要讲了.net技术相关的基本概念和一些涉及的项目什么,本身也没讲太多底层的技术,这篇文章依旧不讲具体的技术,主要介绍.net技术的学习路线.学习路线也是我18年毕业的时候看到 ...
- 搞IT的为什么不建议搞底层(操作系统、编译器、编程语言)——当你搬进你的新家之后,你会在意这个楼是谁打的地基吗?—— 要站在钱流动的地方
文字表达引自:https://www.youtube.com/watch?v=KITqGv1qYg8 当你搬进你的新家之后,你会在意这个楼是谁打的地基吗?你猜猜那些打地基的工人赚多少钱,卖你沙发电视机 ...
- 【转载】【技术杂谈】shell和terminal
分享视频: [技术杂谈]shell和terminal
- mpi4py 官方使用手册
一直好奇mpi4py的使用手册在哪,找了好久最后在anaconda上发现了线索: https://anaconda.org/conda-forge/mpi4py Home: https://mpi4p ...
- 【转载】 vim中常用折叠命令
原文地址: https://www.cnblogs.com/litifeng/p/11675547.html 个人推荐的一个视频教程地址: 上古神器Vim:从恶言相向到爱不释手 - 终极Vim教程01 ...
- 再升级!MoneyPrinterPlus集成GPT_SoVITS
最近有很多优秀的语音合成TTS工具,目前MoneyPrinterPlus已经集成了ChatTTS和fasterWhisper.应朋友们的要求,最近MoneyPrinterPlus也集成了GPT_SoV ...
- jxls导入excel
我们在开发中经常用jxls实现导出功能,殊不知jxls也有导入功能,下面来介绍下如何使用jxls导入excel. 首先在maven的pom中添加相关依赖,如下: <dependency> ...