目录
74 关系: Allegro,ANSI C,动态链接库,十六进制,可变参数模板,双重检查锁定模式,名字修饰,字面常量 (C语言),小朋友齊打交2,小朋友齊打交系列,主函式,三字符组与双字符组,微软软件产品列表,内存屏障,内联函数,免杀技术,C++,C++/CLI,C++11,C++异常处理,C语言,CMake,Code::Blocks,灵活数组类型,类成员函数指针,组件对象模型,C替代标记,Decltype,Delphi,Dev-C++,EMule,静态库,茱莉·拉森-葛林,集成开发环境,通用Windows平台应用,虚继承,FLAC,Gamestudio,GNU C函式庫,Jet Data Access Objects,Locale.h,MASM,Memory (C++标准库),Microsoft Imagine,Microsoft Visual C♯,Microsoft Visual Studio,Microsoft Visual Studio Express,MyIE,Objective-C,Oracle C++ Call Interface,... 扩展索引 (24 更多) »
Allegro
Allegro是一个特别针对于电子游戏的开发的自由软件程式库。 该库提供基本二维图形、图像操作、音效输出、MIDI音乐、输入、计时器,以及额外的寻路矩阵计算、UNICODE、文件系统管理、有限而建基於軟件的三维图形。 其版本4.0可以运行在DOS、Microsoft Windows、BeOS、Mac OS X、多种类Unix,程序只需要嵌入其API即可使用。该库还有独立的AmigaOS 4移植版。 该库使用C语言编写,适用于C或C++,其附带很多文档和实例。.
查看 Microsoft Visual C++和Allegro
ANSI C
ANSI C是美国国家标准协会(ANSI)对C语言发布的标准。使用C的软件开发者被鼓励遵循ANSI C文档的要求,因为它鼓励使用跨平台的代码。.
查看 Microsoft Visual C++和ANSI C
动态链接库
動態連結函式庫(Dynamic-link library,缩写为DLL)是微软公司在微软视窗操作系统中实现共享函数库概念的一种實作方式。这些函式庫函数的扩展名是.DLL、.OCX(包含ActiveX控制的函式庫)或者.DRV(舊式的系统驱动程序)。 所謂動態链接,就是把一些經常會共用的程式碼(靜態链接的OBJ程式庫)製作成DLL檔,當執行檔呼叫到DLL檔內的函數時,Windows作業系統才會把DLL檔載入記憶體內,DLL檔本身的結構就是可執行檔,當程式有需求時函數才進行链接。透過動態链接方式,記憶體浪費的情形將可大幅降低。靜態連結函式庫則是直接連結到執行檔。 DLL的文件格式与视窗EXE文件一样——也就是说,等同于32位视窗的可移植执行文件(PE)和16位视窗的New Executable(NE)。作为EXE格式,DLL可以包括原始碼、数据和资源的多种组合。 在更广泛的意义上说,任何同样檔案格式的電腦檔案都可以称作资源DLL。这样的DLL的例子有扩展名为ICL的图标函式庫、扩展名为FON和FOT的字型檔案。.
十六进制
十六进制(简写为hex或下標16)在数学中是一种逢16进1的进位制。一般用数字0到9和字母A到F(或a~f)表示,其中:A~F表示10~15,这些称作十六进制数字。 例如十进制數57,在二进制寫作111001,在16进制寫作39。 在历史上,中国曾经在重量单位上使用过16进制,比如,规定16两为一斤。 现在的16进制则普遍应用在计算机领域,这是因為將4個位元(Bit)化成單獨的16进制數字不太困難。1字節可以表示成2個連續的16进制數字。可是,這種混合表示法容易令人混淆,因此需要一些字首、字尾或下標來顯示。.
可变参数模板
可变参数模板是模板编程时,模板参数(template parameter)的个数可变的情形。 已经支持可变参数模板的编程语言有D语言与C++(自C++11标准)。.
查看 Microsoft Visual C++和可变参数模板
双重检查锁定模式
双重检查锁定模式(也被称为"双重检查加锁优化","锁暗示"(Lock hint)) 是一种软件设计模式用来减少并发系统中竞争和同步的开销。双重检查锁定模式首先验证锁定条件(第一次检查),只有通过锁定条件验证才真正的进行加锁逻辑并再次验证条件(第二次检查)。 该模式在某些语言在某些硬件平台的实现可能是不安全的。有的时候,这一模式被看做是反模式。 它通常用于减少加锁开销,尤其是为多线程环境中的单例模式实现“惰性初始化”。惰性初始化的意思是直到第一次访问时才初始化它的值。.
查看 Microsoft Visual C++和双重检查锁定模式
名字修饰
名字修饰,又译作名字粉碎、名字重整,译自英文name mangling或name decoration,是现代计算机程序设计语言的编译器用于解决由于程序实体的名字必须唯一而导致的问题的一种技术。 它提供了在函数、结构体、类或其它的数据类型的名字中编码附加信息一种方法,用于从编译器中向链接器传递更多语义信息。 该需求产生于程序设计语言允许不同的条目使用相同的标识符,包括它们占据不同的命名空间(典型的命名空间是由一个模块、一个类或显式的namespace指示来定义的)或者有不同的签名(例如函数重载)。 任何由编译器产生的目标代码通常与另一部分的目标代码(产生于同一款或不同款的编译器)通过链接器把它们链接起来。链接器需要一大堆每个程序实体信息。例如正确链接一个函数需要它的名字、参数个数和它们的类型,等等。.
字面常量 (C语言)
字面常量(literal constant),是C程序设计语言与C++语言的词法上的概念(lexical conventions),是指源程序中表示固定值的符号(token)。 下述内容遵从C11与C++11语言标准。.
查看 Microsoft Visual C++和字面常量 (C语言)
小朋友齊打交2
《小朋友齊打交(二)》(Little Fighter 2,縮寫:LF2),香港免費2D動作遊戲。.
查看 Microsoft Visual C++和小朋友齊打交2
小朋友齊打交系列
小朋友齊打交系列,簡稱:LF系列,是一款自1995年起首次推出的一系列免費電腦遊戲。由中文大學計算機科學系學生王國鴻(Marti Wong,又名「小熊」)主力開發,第二作則加入黃浩然(Starsky Wong,暱稱「浩然」)。早期是使用C語言製作,第二作則使用Visual C++與DirectX製作。該系列遊戲有《小朋友齊打交》、《小朋友齊打交2》和《小朋友齊打交Online》。.
查看 Microsoft Visual C++和小朋友齊打交系列
主函式
在许多命令式程式設計語言裡,主函式(main function)是程式開始執行的地方。而相对地,其它编程范式的语言中就很少会有这样一个概念。.
三字符组与双字符组
三字符组(trigraph)与双字符组(Digraph)是程序设计语言(如C语言)中3个或者2个字符的序列,在编译器预扫描源程序时被替换为单个字符。以解决某些键盘不能输入某些编程必须的字符问题。.
查看 Microsoft Visual C++和三字符组与双字符组
微软软件产品列表
没有描述。
查看 Microsoft Visual C++和微软软件产品列表
内存屏障
内存屏障(Memory barrier),也称内存栅栏,内存栅障,屏障指令等,是一类同步屏障指令,是CPU或编译器在对内存随机访问的操作中的一个同步点,使得此点之前的所有读写操作都执行后才可以开始执行此点之后的操作。 大多数现代计算机为了提高性能而采取乱序执行,这使得内存屏障成为必须。 语义上,内存屏障之前的所有写操作都要写入内存;内存屏障之后的读操作都可以获得同步屏障之前的写操作的结果。因此,对于敏感的程序块,写操作之后、读操作之前可以插入内存屏障。.
内联函数
-- -- 在電腦科學中,內聯函數(有時稱作在線函數或編譯時期展開函數)是一種編程語言結構,用來建議編譯器對一些特殊函數進行內聯擴展(有時稱作在線擴展);也就是說建議編譯器將指定的函數體插入並取代每一處調用該函數的地方(上下文),從而節省了每次調用函數帶來的額外時間開支。但在選擇使用內聯函數時,必須在程序佔用空間和程序執行效率之間進行權衡,因為過多的比較複雜的函數進行內聯擴展將帶來很大的存儲資源開支。另外還需要特别注意的是對遞歸函數的內聯擴展可能引起部分編譯器的無窮編譯。.
免杀技术
免杀技术全称为反杀毒技术Anti Anti- Virus简称“免杀”,它指的是一种能使病毒木马免于被杀毒软件查杀的技术。由于免杀技术的涉猎面非常广,其中包含反汇编、逆向工程、系统漏洞等黑客技术,所以难度很高,一般人不会或没能力接触这技术的深层内容。其内容基本上都是修改病毒、木马的内容改变特征码,从而躲避了杀毒软件的查杀。.
C++
C++是一種使用廣泛的计算机程序設計語言。它是一種通用程序設計語言,支援多重编程模式,例如程序化程序設計、数据抽象、面向对象程序設計、泛型程序設計和设计模式等。 比雅尼·斯特勞斯特魯普博士在贝尔实验室工作期间在20世紀80年代發明並實現了C++。起初,這種語言被稱作“C with Classes”(“包含‘類’的C語言”),作為C語言的增強版出現。随后,C++不斷增加新特性。虚函数(virtual function)、运算符重载(operator overloading)、多繼承(multiple inheritance)、标准模板库(standard template library, STL)、异常处理(exception)、运行时类型信息(Runtime type information)、命名空間(namespace)等概念逐漸納入標準。1998年,國際標準組織(ISO)頒布了C++程序設計語言的第一個國際標準ISO/IEC 14882:1998,目前最新标准为ISO/IEC 14882:2017。根據《C++編--程思想》(Thinking in C++)一書,C++與C的代码执行效率往往相差在±5%之間。 C++語言發展大概可以分為三個階段:第一階段從80年代到1995年。這一階段C++語言基本上是傳統類型上的面向对象語言,並且憑藉着接近C語言的效率,在工業界使用的開發語言中佔據了相當大份額;第二階段從1995年到2000年,這一階段由於標準模板庫(STL)和後來的Boost等程式庫的出現,泛型程序設計在C++中佔據了越來越多的比重。當然,同時由於Java、C#等語言的出現和硬體價格的大規模下降,C++受到了一定的衝擊;第三階段從2000年至今,由於以Loki、MPL(Boost)等程式庫為代表的產生式編程和模板元編程的出現,C++出現了發展歷史上又一個新的高峰,這些新技術的出現以及和原有技術的融合,使C++已經成為當今主流程序設計語言中最複雜的一員。.
C++/CLI
C++/CLI(CLI: Common Language Infrastructure)在计算机语言中是一门由微软设计,用来代替C++托管扩展(Managed C++,下文使用MC++指代)的语言。这门语言在兼容原有的C++标准的同时,重新简化了托管代码扩展的语法,提供了更好的代码可读性。和微软.NET的其他语言一样,微软向ECMA提交了C++/CLI的标准化请求,并且被ECMA通过成为正式的标准。C++/CLI现在可以被Visual C++ 2005和更高版本的编译器支持。C++/CLI的部分特性已经申请了专利。.
查看 Microsoft Visual C++和C++/CLI
C++11
C++11,先前被稱作C++0x,即ISO/IEC 14882:2011,是C++程式語言的一个標準。它取代第二版標準ISO/IEC 14882:2003(第一版ISO/IEC 14882:1998公開於1998年,第二版於2003年更新,分别通稱C++98以及C++03,两者差异很小),且已被C++14取代。相比于C++03,C++11標準包含核心語言的新機能,而且擴展C++標準程式庫,併入了大部分的C++ Technical Report 1程式庫(數學的特殊函式除外)。 ISO/IEC JTC1/SC22/WG21 C++標準委員會計劃在2010年8月之前完成對最終委員會草案的投票,以及於2011年3月召開的標準會議完成國際標準的最終草案。然而,WG21預期ISO將要花費六個月到一年的時間才能正式發佈新的C++標準。為了能夠如期完成,委員會決定致力於直至2006年為止的提案,忽略新的提案。最终于2011年8月12日公布,并于2011年9月出版。 2012年2月28日的國際標準草案是最接近于C++11标准的草案,差异仅有编辑上的修正。 像C++這樣的程式語言,透過一種演化的的過程來發展其定義。這個過程不可避免地將引發與現有程式碼的相容問題,在C++的發展過程中偶爾會發生。不過根據比雅尼·斯特劳斯特鲁普(C++的創始人並且是委員會的一員)表示,新的標準將幾乎100%相容於現有標準。.
C++异常处理
异常处理(exception handling)是C++的一项语言机制,用于在程序能处理异常事件。 异常事件在C++中表示为异常对象(exception object)。异常事件发生时,由操作系统为程序设置当前异常对象,然后执行程序的当前异常处理代码块,在包含了异常出现点的最内层的try块,依次匹配同级的catch语句。如果匹配catch语句成功,则在该catch块内处理异常;然后执行当前try...catch...
查看 Microsoft Visual C++和C++异常处理
C语言
C是一种通用的程式語言,广泛用于系统软件与应用软件的开发。于1969年至1973年間,為了移植與開發UNIX作業系統,由丹尼斯·里奇與肯·汤普逊,以B语言为基础,在贝尔实验室設計、开发出來。 C语言具有高效、灵活、功能丰富、表达力强和較高的可移植性等特点,在程式設計中备受青睐,成为最近25年使用最为广泛的编程语言。目前,C语言編譯器普遍存在於各種不同的操作系统中,例如Microsoft Windows、macOS、Linux、Unix等。C語言的設計影響了众多後來的程式語言,例如C++、Objective-C、Java、C#等。 二十世纪八十年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標準局為C語言訂定了一套完整的國際標準語法,稱為ANSI C,作為C語言的標準。二十世纪八十年代至今的有关程式開發工具,一般都支持符合ANSI C的語法。.
CMake
CMake是個一個开源的跨平台自動化建構系統,用來管理軟體建置的程序,並不相依於某特定編譯器。並可支援多層目錄、多個應用程式與多個函式庫。 它用組態檔控制建構過程(build process)的方式和Unix的make相似,只是CMake的組態檔取名為CMakeLists.txt。CMake並不直接建構出最終的軟體,而是產生標準的建構檔(如Unix的Makefile或Windows Visual C++的projects/workspaces),然後再依一般的建構方式使用。這使得熟悉某個整合開發環境(IDE)的開發者可以用標準的方式建構他的軟體,這種可以使用各平台的原生建構系統的能力是CMake和SCons等其他類似系統的區別之處。 CMake設定檔(CMakeLists.txt)可設定原始碼或目標程式庫的路徑、產生適配器(wrapper)、還可以用任意的順序建構執行檔。CMake支援in-place建構(二進檔和原始碼在同一個目錄樹中)和out-of-place建構(二進檔在別的目錄裡),因此可以很容易從同一個原始碼目錄樹中建構出多個二進檔。CMake也支援靜態與動態程式庫的建構。 「CMake」這個名字是"Cross platform MAke"的縮寫。雖然名字中含有"make",但是CMake和Unix上常見的「make」系統是分開的,而且更為高階。 它可與原生建置環境結合使用,例如:make、蘋果的Xcode與微軟的Visual Studio。.
Code::Blocks
Code::Blocks是一個免費、開源、跨平台的集成开发环境,使用C++開發,並且使用wxWidgets做為GUI函式庫。Code::Blocks使用了外掛程式架構,其功能可以使用外掛程式自由地擴充。目前, Code::Blocks主要針對開發C/C++程式而設計。 Code::Blocks目前支援Windows、Linux及Mac OS X數種平台。使用者亦能夠在FreeBSD環境中架设Code::Blocks.
查看 Microsoft Visual C++和Code::Blocks
灵活数组类型
灵活数组类型是C99引入的语言特性。即在struct数据类型的最后一个数据成员,可以为一个未指明长度的数组类型。例如: struct double_vector_st; sizeof运算符作用于这个struct,返回灵活数组成员的偏移量。在堆上分配这种struct,应该保留灵活数组的空间。如下例: struct double_vector_st *allocate_double_vector(size_t len) C++语言标准尚未支持灵活数组类型。但Visual C++2015支持。.
查看 Microsoft Visual C++和灵活数组类型
类成员函数指针
类成员函数指针(member function pointer),是C++语言的一类指针数据类型,用于存储一个指定类具有给定的形参列表与返回值类型的成员函数的访问信息。.
查看 Microsoft Visual C++和类成员函数指针
组件对象模型
组件对象模型(Component Object Model,縮寫COM)是微軟的一套软件组件的二进制接口标准。这使得跨编程语言的进程间通信、动态对象创建成为可能。COM是多项微软技术与框架的基础,包括OLE、、ActiveX、COM+、DCOM、、DirectX、Windows Runtime。.
查看 Microsoft Visual C++和组件对象模型
C替代标记
C替代标记指一批C语言常见运算符的可选拼写。它们实现为C標準函式庫中iso646.h头文件内的一组宏定义。此标记作为C90标准的修正案于1995年增补。 替代标记允许程序员使用C语言按位和逻辑,原先的标记在一些国际和非QWERTY键盘上很难输入。根据ISO/IEC 646标准实现的头文件有一些区域性的变化,其中一些用重音字符替换了C运算符使用的标点符号。.
Decltype
在C++程序设计语言中,decltype作为,用于获取表达式的数据类型。C++11标准引入decltype,主要是为泛型编程而设计,以解决泛型编程中有些类型由模板参数决定而难以(甚至不可能)表示的问题。 从语义上说,decltype的设计适合于通用库编写者或编程新手。总体上说,对于变量或函数参数作为表达式,由decltype推导出的类型与源码中的定义可精确匹配。而正如操作符一样,decltype不对操作数求值。.
查看 Microsoft Visual C++和Decltype
Delphi
Delphi,是Windows平台下著名的快速應用程式開發(Rapid Application Development,简称RAD)。它的前身,即是DOS時代盛行一時的「Borland Turbo Pascal」,最早的版本由美国Borland(宝兰)公司於1995年开发。主创者為安德斯·海尔斯伯格。經過數年的發展,此產品也轉移至Embarcadero公司旗下。 从产品名称上就可以知道,Turbo Pascal使用的是Pascal语言。从Turbo Pascal 5.5版开始,Borland公司在传统Pascal的基础上加入了物件導向的功能。 Delphi是一个整合開發環境(IDE),使用的核心是由传统Pascal语言发展而来的Object Pascal,以图形用户界面(Graphical User Interface,简称GUI)为开发环境,透過IDE、VCL工具與編譯器,配合連結資料庫的功能,構成一個以物件導向程式設計為中心的應用程式開發工具。Delphi所編譯的可執行檔,雖然容量較大,但因為產生的是真正的原生機器碼,效能上比較快速。除了使用資料庫的程式之外,不需安裝即可執行,在使用上相當方便。 Delphi在本质上應該歸類為軟體開發工具,而並非是程式语言,但由于Delphi几乎是目前市场上唯一使用Pascal,並持續推出新版本的商业产品。因此,有時人们會把Delphi視為Object Pascal的代名词。Borland公司因而把Object Pascal改称为Delphi。2006年,Borland把开发工具产品线独立出来,成立了一家新的公司CodeGear,並把產品線交由此公司负责。原本的Delphi,亦曾一度因此被命名为Turbo Delphi。但是在新的版本中,除了Delphi for Win32(原有的Delphi版本)之外,还有一个新产品「Delphi for PHP」。在CodeGear的发展规划中,或许“Delphi”不再是Object Pascal的专屬IDE名稱,而是将之提升到通用IDE品牌的層次。2008年5月7日,Embarcadero Technologies(易博龙)公司宣布以2300万美元的价格收购CodeGear公司,从而把Delphi收入囊中。2009年5月6日,Micro Focus宣布以7500万美元收购Borland。 Delphi目前的最新版本是Delphi 10.2 Tokyo。.
查看 Microsoft Visual C++和Delphi
Dev-C++
Dev-C++是一套用於開發C/C++(C++11)的自由的集成开发环境(IDE),並以GPL作為散佈許可。使用MinGW及GDB作為編譯系統與除錯系統。Dev-C++的IDE是利用Delphi開發的。 Dev-C++是一個SourceForge的計畫,是由Colin Laplace這位程式設計師及其公司Bloodshed Software所開始的。目前Dev-C++一般用於撰寫執行於Microsoft Windows的程式。Dev-C++一度有移植到Linux的計畫但目前被暫停了。 Bloodshed Dev-C++是一款全功能的C和C++编程语言的集成开发环境(IDE)。它使用的GCC MinGW或TDM-GCC的64位版本作为它的编译器。DEV-C++也可以使用Cygwin或任何其他基于GCC编译器组合使用。 此外,Dev-C++较旧的版本无法在win8环境下编译。.
查看 Microsoft Visual C++和Dev-C++
EMule
eMule是一个开源免费的P2P文件共享软件,基于eDonkey2000的eDonkey网络,遵循GNU通用公共许可证协议发布,运行于Windows下。eMule中文名称在大陆用户中有争议,根据eMule官方网站的简体中文版说法,“eMule”译为“电骡”,其名称也来源于骡。 eMule于2002年5月开始开发。与之前的eDonkey2000客户端相比,eMule能够连接eDonkey和Kad两个网络,有较快的下载损坏数据恢复功能,有奖励频繁上传的用户的积分系统。另外,eMule以zlib压缩格式传输数据以节约带宽。 eMule用Microsoft Visual C++编译,使用了MFC。由于eMule开放源代码,其代码基础也被Linux平台下的客户端xMule和跨平台客户端aMule、JMule所使用。同时eMule也衍生出了很多修改版,即eMule Mod(s)。 很长时间以来eMule都是SourceForge网站上的下载量最多的软件。截止2009年9月,官方eMule在SourceForge上的下载点击数已超过5亿。.
静态库
在電腦科學裡,靜態庫(Static library, Statically-linked library),或称靜態函式庫,是一個外部函式與變數的集合體。靜態函式庫的檔案內容,通常包含一堆程式設計師自定的變數與函式,其內容不像動態連結庫那麼複雜,在編譯期間由編譯器與連結器將它整合至應用程式內,並製作成目的檔以及可以獨立運作的執行檔。而這個執行檔與編譯執行檔的程序,都是一種程式的靜態建立(static build)。以過去的觀點來說,函式庫只能算是靜態(static)類型。.
茱莉·拉森-葛林
茱莉·拉森-葛林(Julie Larson-Green,),又譯為朱莉·拉森-格林,本姓拉森(Larson),婚後冠夫姓葛林(Green),生於美國華盛頓州楓葉鎮(Maple Falls),微軟公司首席体验官與執行副總裁,主管My Life & Work部門。 拉森于1993年加入微软,曾擔任Microsoft Office 2007的產品經理。在她的主導下,引進Ribbon,取代原有的選單介面。她因此在2013年赢得了技术领导奖。此外,她曾主管設備與工作室工程集團(Devices and Studios Engineering Group)。.
查看 Microsoft Visual C++和茱莉·拉森-葛林
集成开发环境
集成开发环境(Integrated Development Environment,簡稱IDE,也稱為Integration Design Environment、Integration Debugging Environment)是一種輔助程式開發人員開發軟體的應用軟體,在開發工具內部就可以輔助編寫原始碼文本、並編譯打包成為可用的程序,有些甚至可以設計圖形介面。 IDE通常包括程式語言編輯器、自動构建工具、通常還包括除錯器。有些IDE包含編譯器/直譯器,如微软的Microsoft Visual Studio,有些则不包含,如Eclipse、SharpDevelop等,这些IDE是通过调用第三方编译器来实现代码的编译工作的。有時IDE還會包含版本控制系統和一些可以設計圖形用戶界面的工具。許多支援物件導向的現代化IDE還包括了類別瀏覽器、物件檢視器、物件結構圖。雖然目前有一些IDE支援多種程式語言(例如Eclipse、NetBeans、Microsoft Visual Studio),但是一般而言,IDE主要還是針對特定的程式語言而量身打造(例如Visual Basic)。.
查看 Microsoft Visual C++和集成开发环境
通用Windows平台应用
通用Windows平台应用,也称Metro风格应用,是一种通過Windows应用商店向Microsoft Windows作業系統分發的移動應用程式,它們不同於在設計、開發、分發以及內容上不同於傳統桌面應用程式。.
查看 Microsoft Visual C++和通用Windows平台应用
虚继承
虚继承 是面向对象编程中的一种技术,是指一个指定的基类,在继承体系结构中,将其成员数据实例共享给也从这个基类型直接或间接派生的其它类。 举例来说:假如类A和类B各自从类X派生(非虚继承且假设类X包含一些数据成员),且类C同时多继承自类A和B,那么C的对象就会拥有两套X的实例数据(可分别独立访问,一般要用适当的消歧义限定符)。但是如果类A与B各自虚继承了类X,那么C的对象就只包含一套类X的实例数据。对于这一概念典型实现的编程语言是C++。 这一特性在多重继承应用中非常有用,可以使得虚基类对于由它直接或间接派生的类来说,拥有一个共同的基类对象实例。避免由于带有歧义的组合而产生的问题(如“菱形继承问题”)。其原理是,间接派生类(C)穿透了其父类(上面例子中的A与B),实质上直接继承了虚基类X。 这一概念一般用于“继承”在表现为一个整体,而非几个部分的组合时。在C++中,基类可以通过使用关键字virtual来声明虚继承关系。.
FLAC
FLAC(;全称:Free Lossless Audio Codec),中文直译為自由無損音頻壓縮編碼(注:这里“Free”指的是自由软件——而并不仅是免费)。FLAC是一款的自由音頻壓縮編碼,其特點是可以对音频文件無損壓縮。不同於其他有損壓縮編碼,如 MP3 、AAC,壓縮後不會有任何音質損失,現在已被很多軟體及硬體音頻產品所支持。早期ipod或iphone并不支持,苹果另有ALAC。.
Gamestudio
Gamestudio,一般被称为3D Gamestudio,或者3DGS,是一个3D电脑游戏开发系统,允许用户创建3D游戏和其它虚拟现实应用程序,并且可以免版税发布。该系统包含一个模型/地形编辑器,一个场景编辑器,一个脚本编辑/调试程序,而且还收录了大量的纹理,模型,和贴图。不仅如此,该系统还带有一个游戏模板系统,用户不需编程就可以用它做一些基本的射击游戏或者角色扮演类游戏。对于更复杂的游戏或者其它应用程序,用户可以使用软件集成的编程语言,Lite-C,或者用外部开发语言,比如VC++或者Borland Delphi。 Gamestudio面向各种各样的用户群,针对爱好者,美工人员以及编程人员提供低中高三种层次的用途(初级版、高级版、专业版)。并且,Conitec公司也希望把这个系统推向广告游戏开发,实时演示,模拟以及虚拟展览制作的市场。大部分发行的Gamestudio作品都是有2到3人的开发团队制作完成的。而且,在网络上还有一个庞大的在线用户交流群可以针对这个系统提供帮助。.
查看 Microsoft Visual C++和Gamestudio
GNU C函式庫
GNU C函式庫(GNU C Library,又稱為glibc)是一种按照LGPL许可协议发布的,自由的,公开源代码的,方便从网络下载的C的编译程序。GNU C运行期库,是一种C函式库,是程序运行时使用到的一些API集合,它们一般是已预先编译好,以二进制代码形式存在Linux类系统中,GNU C运行期库通常作为GNU C编译程序的一个部分发布。 Glibc最初是自由软件基金会为其GNU操作系统所写,但目前最主要的应用是配合Linux内核,成为GNU/Linux操作系统一个重要的组成部分。.
查看 Microsoft Visual C++和GNU C函式庫
Jet Data Access Objects
Jet Data Access Objects是微软的一项过时的数据库编程访问界面。DAO是基于Microsoft Jet Database Engine之上的一套面向对象的体系,可以访问Microsoft Access或dBase等桌面文件型数据库,或者ODBC。1996年发布的建于OLE DB之上的ADO,取代了DAO的地位。.
查看 Microsoft Visual C++和Jet Data Access Objects
Locale.h
locale.h是C程序设计语言标准函数库的一个头文件,声明了C语言本地化函数。 这些函数用于在处理多种自然语言的软件编程设计时,把程序调整到特定的区域设置.
查看 Microsoft Visual C++和Locale.h
MASM
MASM 是 Microsoft Macro Assembler 的縮寫,它是微軟為 x86 微處理器家族,所寫的一套巨集組譯器。它最初是用來發展在 MS-DOS 上面執行的軟體,同時,它也是該系統最流行的組譯器。 它支援的巨集很靈巧,既廣泛又多樣性,結構化程式的慣用語法,包含高階架構式的迴圈、程序呼叫,以及輪替 (alternation)(因此,MASM 算是高階組譯器的一個範本)。MASM原本是由微軟公司維護的,但從6.12版後不再單獨銷售,而是隨附在微軟軟體開發套件與C語言編譯器下,近期版本的MASM也包含在微軟開發工具Visual Studio中。.
Memory (C++标准库)
memory 是C++標準程式庫中的一個头文件,定义了C++标准中的智能指针、内存分配器(allocator)、与垃圾回收有关的函数、临时性的申请与释放动态内存的函数、在内存上创建(构造)对象的函数等等。.
查看 Microsoft Visual C++和Memory (C++标准库)
Microsoft Imagine
Microsoft Imagine 原名DreamSpark,是一项由微软公司设立的,免费为学生提供软件设计和开发工具的计划,亦称“微软学生软件资源—点亮梦想计划”或“DreamSpark 学生梦想火花计划” 。该计划最初针对白俄罗斯、比利时、中国、芬兰、法国、德国、印度、西班牙、瑞典、瑞士、突尼斯、英国和美国的大学或学院学生,现已扩展到80多个国家,并涵盖了许多高中学生。 学生可访问进行注册,并认证其学生身份。 DreamSpark计划是由比尔·盖茨于2008年2月19日在斯坦福大学的演讲上宣布实施的。.
查看 Microsoft Visual C++和Microsoft Imagine
Microsoft Visual C♯
Microsoft Visual C#是美國微軟公司開發的C#编程语言規格之集成开发环境使用者介面。 其中Visual這個術語是微軟相關產品的一致性的“品牌名稱”,一如微軟其它的產品一樣:Visual Basic,Visual FoxPro和Visual C++。所有这些产品都与一个图形化的集成开发环境打包在一起,并且支持基于Windows的应用程序的快速开发。 此条目C#是关于语言规范,避免涉及微软的实现。.
查看 Microsoft Visual C++和Microsoft Visual C♯
Microsoft Visual Studio
Microsoft Visual Studio(简称VS或MSVS)是微软公司的开发工具套件系列产品。VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境(IDE)等等。所写的目标代码适用于微软支持的所有平台,包括Microsoft Windows、Windows Phone、Windows CE、.NET Framework、.NET Compact Framework和Microsoft Silverlight。 而Visual Studio.NET是用于快速生成企业级ASP.NET Web应用程序和高性能桌面应用程序的工具。Visual Studio包含基于组件的开发工具(如Visual C#、Visual J#、Visual Basic和Visual C++),以及许多用于简化基于小组的解决方案的设计、开发和部署的其他技术。.
查看 Microsoft Visual C++和Microsoft Visual Studio
Microsoft Visual Studio Express
Microsoft Visual Studio Express是一套由微軟公司開發的免費整合開發環境,是Microsoft Visual Studio產品線上的輕量版本。其具有易學易用的特點,而功能稍弱;故其受眾是愛好者和學生,而非專業開發者。 Express版本於Microsoft Visual Studio 2005最初出現。.
查看 Microsoft Visual C++和Microsoft Visual Studio Express
MyIE
MyIE是一位网名为changyou(畅游)的程序员在1999年左右编写和发布的基于Trident引擎(IE核心)的多页面浏览器。MyIE采用标签式界面,占用资源低于IE6,且具有鼠标手势、视觉化书签等实用功能,因此在发布后广为流传。该软件为免费软件,作者畅游此后还将其开放源代码,源程序采用Visual C++编写。中国浏览器MyIE2(后改名Maxthon,2.x起为重新开发)与网际畅游(后改名GreenBrowser)等早期都是基于MyIE的源代码改进而成的复刻软件。 MyIE作者畅游曾在其MyIE软件官方网站友情链接“转法轮”网站以及公布可以突破网络审查的代理服务器地址,后来此人不知所踪,MyIE的官方网站也遭封禁。软件最终版本定格在3.2版。.
Objective-C
Objective-C是一种通用、高级、面向对象的编程语言。它扩展了标准的ANSI C编程语言,将Smalltalk式的消息传递机制加入到ANSI C中。目前主要支持的编译器有GCC和Clang(採用LLVM作為後端)。 Objective-C的商標權屬於蘋果公司,蘋果公司也是這個程式語言的主要開發者。苹果在開發NeXTSTEP操作系統時使用了Objective-C,之后被OS X和iOS继承下來。現在Objective-C与Swift是OS X和iOS操作系统、及与其相关的API、Cocoa和Cocoa Touch的主要编程语言。.
查看 Microsoft Visual C++和Objective-C
Oracle C++ Call Interface
Oracle C++ Call Interface (OCCI),是Oracle公司提供的C++程序访问Oracle数据库的API OCCI的类提供了SQL语句的参数。OCCI从Oracle数据库9i开始发布。 OCCI起源自,C语言程序的API。.
查看 Microsoft Visual C++和Oracle C++ Call Interface
PotPlayer
PotPlayer(팟플레이어),是KMPlayer的原作者姜勇囍進入Daum公司後的新一代作品,目前仍有更新。由於採用Delphi編譯程序的KMPlayer有一些弊端,姜勇囍為改進播放器本身的一些性能而重新用VC++進行構架。 雖然PotPlayer與KMPlayer同屬一個開發者的產品,但它與KMPlayer所注重的地方並不同,能夠滿足不同用戶的使用需求。PotPlayer也可以在64位元Windows系統上運行。 在1.6.62377版本中,PotPlayer官方正式發布多國語言穩定版安裝包,並且支援中文、英文、波蘭文、葡萄牙文以及俄文。.
查看 Microsoft Visual C++和PotPlayer
Pragma once
在C和C++程式語言中,#pragma once是一個非標準但是被廣泛支援的前置處理符號,會讓所在的檔案在一個單獨的編譯中只被包含一次。以此方式,#pragma once提供類似include防範的目的,但是擁有較少的程式碼且能避免名稱的碰撞。.
查看 Microsoft Visual C++和Pragma once
Process.h
process.h是一个C语言头文件,包含了函数与宏用于创建管理线程与进程。在DOS、Windows 3.1x、Win32、OS/2、Novell NetWare、等平台上一般提供该头文件与库函数。该头文件既不是ANSI/ISO C也不是POSIX标准的组成部分。MinGW与Microsoft Visual C++均支持该头文件。.
查看 Microsoft Visual C++和Process.h
Qt Creator
Qt Creator 是一款跨平台的集成開發環境,特别针对Qt开发者,是Qt SDK組成的一部分,可运行于Windows, Linux/X11及Mac OS X等桌面操作系统,允许开发者为多桌面环境及移动设备平台创建应用程序。它包括一個可視化偵錯工具和整合的 GUI 版面和外形設計師。這個編輯器的功能包括語法高亮度顯示和自動完成。 Qt Creator 在 Linux 上,使用 GCC 的 C++ 編譯器。在 Windows,預設安裝它可以使用 MinGW 或 MSVC。從原始碼編譯時,也可以使用 cdb。 於2008年10月的Qt Developer Days宣布這項計畫(代號為 Greenhouse)。 該項目的技術預覽版在2008年10月30日公佈。 最後在2009年3月3日正式發布(連同Qt 4.5),並提供LGPL許可的源代碼。.
查看 Microsoft Visual C++和Qt Creator
ReactOS
ReactOS是一个开发与Windows NT和Windows 2000应用程序和硬件驱动程序兼容的开源操作系统的项目。此项目目前虽然只是处于内部测试(alpha)开發状态,但到2005年1月其中一些子项目已经完成了目标。 ReactOS主要是由C語言編寫。部分元件則由C++編寫,例如ReactOS文件瀏覽器。 ReactOS的各部份在GNU通用公共许可证、GNU寬通用公共許可証、及/或BSD许可证下发布。 為確保操作系統沒有任何一部份是看過泄漏出來的微軟Windows源碼的人所寫,或者逆向工程的過程達不到净室设计標準,一個全盤的源碼審查由ReactOS主要開發者下令展開。此審查目前已經結束。.
查看 Microsoft Visual C++和ReactOS
Signal.h
signal.h是C标准函数库中的信号处理部分, 定义了程序执行时如何处理不同的信号。信号用作进程间通信, 报告异常行为(如除零)、用户的一些按键组合(如同时按下Ctrl与C键,产生信号SIGINT)。 C++中的对应头文件是csignal。.
查看 Microsoft Visual C++和Signal.h
SSE2
SSE2,全名為Streaming SIMD Extensions 2,是一種IA-32架構的SIMD(單一指令多重資料)指令集。SSE2是在 2001年隨著Intel發表第一代Pentium 4處理器也一併推出的指令集。它延伸較早的SSE指令集,而且可以完全取代MMX指令集。在2004年,Intel 再度擴展了SSE2指令為 SSE3 指令集。與 70 條指令的 SSE 相比,SSE2新增了144條指令。在2003年,AMD也在發布AMD64的64位元處理器時跟進SSE2指令集。.
The KMPlayer
The KMPlayer,簡稱KMP,是南韓作者姜勇囍(강용희)所開發的免費影音播放軟體。早期名叫“WaSaVi”播放器,歷時五年自主開發的韓文多媒體圖形視窗工程免費項目。目前以其強大的操控功能在眾多免費播放器中逐漸顯示其開發實力。底層調用WMP的內核DirectShow,外部同時支持臨時掛接Windows下的全部解碼器,同時也支--Winamp中的各種輸入、音效、視覺效果插件。 The KMPlayer的 K 是來自於開發者的姓氏 姜(Kang);The KMPlayer的名稱意義是Kang's Multimedia Player。2007年8月作者将源代码及核心引擎技术出售给Pandora TV。 2008年作者姜勇囍進入Daum Communications(多音通訊公司,다음커뮤니케이션),並在其後發表另一項作品Daum PotPlayer播放軟體。.
查看 Microsoft Visual C++和The KMPlayer
Tiny C Compiler
Tiny C Compiler(縮寫為TCC、tCc或TinyCC)是一个用於x86(16/32位元)或x86-64(64位元)系統的C编译器,開發者為Fabrice Bellard。軟體是設計用於低階電腦環境,或是於磁碟容量有限的空間中(1.44磁片或是硬碟)。軟體可以適用於Windows、Linux、Unix作業系統,而最新版本為0.9.26(2013年2月15日)。TCC是在GNU宽通用公共许可证(LGPL)協定規範下發布。 TCC符合ANSI C(C89/C90)規範亦符合新版的ISO C99標準規範,與GNU C擴展的內嵌組合語言(即inline assembler)功能汇编语言。 而Google Andriod系統內亦曾經內建於其中,於Andriod 2.0版本中,可詳見於Jserv網站上的文章:.
查看 Microsoft Visual C++和Tiny C Compiler
VC
VC可以指:.
Volatile变量
在程序设计中,尤其是在C语言、C++、C#和Java语言中,使用volatile关键字声明的变量或对象通常具有与优化、多线程相关的特殊属性。通常,volatile关键字用来阻止(伪)编译器认为的无法“被代码本身”改变的代码(变量/对象)进行优化。如在C语言中,volatile关键字可以用来提醒编译器它后面所定义的变量随时有可能改变,因此编译后的程序每次需要存储或读取这个变量的时候,都会直接从变量地址中读取数据。如果没有volatile关键字,则编译器可能优化读取和存储,可能暂时使用寄存器中的值,如果这个变量由别的程序更新了的话,将出现不一致的现象。 在C环境中,volatile关键字的真实定义和适用范围经常被误解。虽然C++、C#和Java都保留了C中的volatile关键字,但在这些编程语言中volatile的用法和语义却大相径庭。.
查看 Microsoft Visual C++和Volatile变量
Win32控制台
Win32控制台(Win32 console)是Windows API系统内运行控制台应用程序的的实现。每个Win32控制台有一个屏幕缓冲区和一个输入缓冲区,并可在視窗或的屏幕下使用,使用Alt+Enter键可在两者间切换。 Win32控制台通常用于不需要显示图像但可能使用颜色的应用程序。以命令行界面工具举例:命令行解释器有Windows命令行提示符、Windows PowerShell;文件管理器有和;编辑器有。.
查看 Microsoft Visual C++和Win32控制台
Windows Embedded Compact
Windows Embedded Compact(曾被稱為Microsoft Windows CE),為微軟研發的嵌入式作業系統,可以應用在各種嵌入式系統,或是硬體規格較低的電腦系統(例如很少的記憶體,較慢的中央處理器等)。微軟並未定義CE縮寫由來,一般解釋則有Compact Edition、Customer Embedded、Consumer Electronics等等。在2008年4月15日舉行的嵌入式系统大会上,微軟宣布將Windows CE更名為Windows Embedded Compact,與Windows Embedded Enterprise、Windows Embedded Standard和Windows Embedded POSReady組成Windows Embedded系列產品。.
查看 Microsoft Visual C++和Windows Embedded Compact
X86调用约定
这里描述了在x86芯片架构上的调用约定(calling conventions)。 调用约定描述了被调用代码的接口:.
查看 Microsoft Visual C++和X86调用约定
标准模板库
标准模板库(英文:Standard Template Library,缩写:STL),是一个C++软件库,大量影響了C++标准程序库但並非是其的一部分。其中包含4个组件,分别为算法、容器、函数、迭代器。 模板是C++程序设计语言中的一个重要特征,而标准模板库正是基于此特征。标准模板库使得C++编程语言在有了同Java一样强大的类库的同时,保有了更大的可扩展性。.
模板 (C++)
模板(Template)指C++程序设计语言中的函数模板与类模板,是一种参数化类型机制,大体对应于java和C#中的泛型,但也有一些功能上的显著差异(C++模板支持后两者没有明确对应的模板模板参数和模板非类型参数,但不支持Java的通配符以及C#的泛型类型约束)。模板是C++的泛型编程中不可缺少的一部分。 模板是C++程序员绝佳的武器,特別是結合了多重继承与运算符重载之后。C++的标准函数库提供的许多有用的函数大多結合了模板的概念,如STL以及iostream。.
查看 Microsoft Visual C++和模板 (C++)
汇编语言
汇编语言(assembly language)是一种用于电子计算机、微处理器、微控制器,或其他可编程器件的低级语言。在不同的设备中,汇编语言对应着不同的机器语言指令集。一种汇编语言专用于某种计算机系统结构,而不像许多高级语言,可以在不同系统平台之间移植。 使用汇编语言编写的源代码,然后通过相应的汇编程序将它们转换成可执行的机器代码。这一过程被称为汇编过程。 汇编语言使用助记符(Mnemonics)来代替和表示特定低级机器语言的操作。特定的汇编目标指令集可能会包括特定的操作数。许多汇编程序可以识别代表地址和常量的标签(Label)和符号(Symbols),这样就可以用字符来代表操作数而无需采取写死的方式。普遍地说,每一种特定的汇编语言和其特定的机器语言指令集是一一对应的。 许多汇编程序为程序开发、汇编控制、辅助调试提供了额外的支持机制。有的汇编语言编寫工具经常会提供巨集,它们也被称为--汇编器。 现在汇编语言已不像其他大多數的程序設計語言一樣被廣泛用于程序設計,在今天的實際應用中,它通常被應用在底層硬件操作和高要求的程序優化的场合。驅動程序、嵌入式操作系統和實時運行程序都会需要組合語言。.
活动模板库
活动模板库(Active Template Library (ATL))是一個以C++模板技術的類的集合,是Microsoft為了簡化組件對象模型(COM)的程式設計而發佈的。 COM旨在允許開發者利用Visual C++創造各種各樣的元件,包括OLE Automation伺服器,與ActiveX控制項。 Patterned after the Standard Template Library (STL), ATL 包含一個物件精靈(object wizard),當設定好主要的物件結構後,能夠產生快速與較小的程式。 通过MFC可以提供互联网市场所需的控件,但是市场上还需要可以从网络上下载的轻量级控件。MFC程序通常较大而且需要支持DLL。 ATL允许创建不需要支持DLL的更小的控件,所以ATL是一种在COM控件环境下MFC的轻量级替代物。.
游戏编程
游戏编程指利用计算机编程语言,如C编程语言、C++编程语言、汇编等,编制计算机或游戏机上的游戏。 目前流行的游戏编程语言为C++编程语言,目前流行的游戏编程接口为DirectX 9.0,还有OpenGL、SDL等。.
无序关联容器 (STL)
C++程序设计语言中,unordered_map、unordered_multimap、unordered_set、unordered_multiset是标准模板库(STL)提供的一类无序关联容器(unordered associative containers)。是通过哈希表实现的数据结构。无序是指元素的名字(或者键值)的存储是无序的;这与用平衡二叉树实现的元素名字是有序存储的“关联容器”是相对概念。.
查看 Microsoft Visual C++和无序关联容器 (STL)
无线二进制运行环境
無線二進位執行環境(Binary Runtime Environment for Wireless,簡稱BREW)為2001年美國高通(Qualcomm)公司所設計提出的3G系統最佳平台解決方案,可支援cdmaOne/CDMA2000/GSM/GPRS/UMTS/WCDMA,技術上橫跨電信、軟體開發、手機廠等三大領域。在程式語言支援方面,BREW可讓使用C/C++語言開發的應用擁有更好的運行效能,同時支援其他開發語言包括Java、XML和Flash等。目前有美國Verizon Wireless、中国电信、日本KDDI、南韓KTF、泰國Hutchison cat、澳洲Telstra、墨西哥Iusacell、印度Tata、巴西VIVO、阿根廷Movicom、以色列Pelephone、委内瑞拉的Telcel、乌拉圭的Movicom……等數十家電信業者採用。.
查看 Microsoft Visual C++和无线二进制运行环境
数组
在計算機科學中,陣列資料結構(array data structure),簡稱数组(Array),是由相同类型的元素(element)的集合所組成的資料結構,分配一块连续的内存来存储。利用元素的索引(index)可以计算出该元素對應的儲存地址。 最簡單的資料結構類型是一維陣列。例如,索引為0到9的32位元整數陣列,可作為在記憶體位址2000,2004,2008,...2036中,儲存10個變量,因此索引為i的元素即在記憶體中的2000+4×i位址。陣列第一個元素的記憶體位址稱為第一位址或基礎位址。 二维数组,对应于數學上的矩陣概念,可表示為二維矩形格。例如: a.
整型提升
整型提升是C程序设计语言中的一项规定:在表达式计算时,各种整形首先要提升为int类型,如果int类型不足以表示则要提升为unsigned int类型;然后执行表达式的运算。 这一规则是由C语言的发明人丹尼斯·里奇与肯·汤普逊创设的: 这段话的大意是:表达式中可以使用整数的地方,就可以使用枚举类型,或有符号或无符号的字符、短整数、整数位域。如果一个int可以表示上述类型,则该值被转化为int类型的值;否则,该值被转化为unsigned int类型的值。这一过程被称作integral promotion。 整型提升的意义在于:表达式的整型运算要在CPU的相应运算器件内执行,CPU内整型运算器(ALU)的操作数的字节长度一般就是int的字节长度,同时也是CPU的通用寄存器的长度。因此,即使两个char类型的相加,在CPU执行时实际上也要先转换为CPU内整型操作数的标准长度。通用CPU(general-purpose CPU)是难以直接实现两个8比特字节直接相加运算(虽然机器指令中可能有这种字节相加指令)。所以,表达式中各种长度可能小于int长度的整型值,都必须先转换为int或unsigned int,然后才能送入CPU去执行运算。 C语言标准中仅规定了: 这意味着short int与int的长度相等的可能。这种情形下,unsigned short就无法提升为int表示,只能提升为unsigned int。 示例程序如下:.
整合開發環境列表
以下為(程式語言撰寫開發)整合開發環境的列表:.
查看 Microsoft Visual C++和整合開發環境列表
亦称为 MSVC,VC++,Visual C++。