C++与C的区别
北海
1) 函数声明
l C如果不写返回值,默认是int,而C++中不能不写返回值(可用void表示无返回值)。
如Func1();
l int Func1()在C中表示可带任意参数的函数,这是C的漏洞,使得它避开了参数类型检查;而C++中表示不带参数的函数。
2) 头文件的区别
l C++的头文件去掉了C中的.h,以c前缀开始。比如,<stdio.h> <stdlib.h>变为<cstdio> <cstdlib>
l C带.h的是非模板化的头文件,而C++是模板化的头文件。
.h文件是不含命名空间的,所以以前的<iostream.h>是不需要using的。
当然也可以用老的C头文件,但是,在同一个程序里不能混着用,虽然编译可以通过,但是可能会出现问题。
3) register变量
在C语言中,是不能对register变量取地址的,因为它没有虚地址,在寄存器里。而C++中,它是可以取址的,这时,C++编译器会忽略register,不会把它放到寄存器里。
4) const变量
C中,const是只读的变量,不是常量;C++中它是常量。区别用例子描述如下:
const int MAX = 10;
char buffer[MAX]; //C中它是不合法的,可以用enum或define替代;
//C++中它是合法的。
本质:C中const变量分配在全局静态区;C++中则在常量区,编译过程中值就定了。
5) typedef
在C中,
struct A
{
};
A a; //这是错误的,在C++中是合法的。
struct A a; //这是正确的
用了typedef后,C中A a;也是合法的了。
6) struct/union/class
l 对于struct/union数据成员与函数成员的访问性来说,其默认是public;
l class则是private。
l union联合体不能作为基类继承。
union A
{
};
class B: public A //编译出错
{
};
l 匿名union
union
{
int a;
float b;
};
在程序里可以直接访问
相关文档:
Technorati 标签: C++ 原文地址:http://www.byvoid.com/blog/c-int64/ 在C/C++中,64为整型一直是一种没有确定规范的数据类型。现今主流的编译器中,对64为整型的支持也是标准不一,形态各异。一般来说,64位整型的定义方式有long long和__int64两种(VC还支持_int64),而输出到标准输出方式有printf(“%lld”,a),printf ......
1:SQL Server数据库配置
开启服务器
托盘显示服务器启动
2:在StaAfx.h 中添加如下代码
#import "C:\\Program Files\\Common Files\\System\\ado\\msado15.dll" no_namespace rename("EOF","adoEOF")rena ......
C/C++ Reference
http://www.cppreference.com/
C++ Library Reference
http://www.cplusplus.com/ref/
Standard C++ Library Class Reference at Rogue Wave
http://www.roguewave.com/support/docs/hppdocs/stdref/
Dink ......
oracle中pro*c的学习
一 Pro*C 程序概述:
1.什么是Pro*C程序
在ORACLE数据库管理和系统中, 有三种访问数据库的方法;
(1) 用SQL*Plus, 它有SQL命令以交互的应用程序访问数据库;
(2) 用第四代语言应用开发工具开发的应用程序访问数据库,这些工具有SQL*froms,QL*Reportwriter,SQL*Menu等;
(3) 利用在 ......