参考《Google C++编码规范》,部分根据个人喜好有所更改。总的规则:1. 类型和变量名一般为名词,如:FileOpener、num_errors。2. 函数名通常是命令性的,如 openFile()、set_num_errors(),存取函数和其访问的变量名要吻合。3. 除非缩写是大多数人都懂的常用缩写,并且指代明确,否则不要使用缩写。文件命名:4. 文件名全部小写,以下划线“_”连接,如:my_useful_class.cpp、my_useful_class.h。类型命名:5. 类型命名,每个单词...
C++中的陷阱果然很多,不久前又犯了一次错。我在某个头文件中定义了_UTILITY_,接着包含了它和vector头文件,结果就在之后的vector声明中就出错(显示不允许使用不完整的类型)了。这就让我很郁闷了:我明明包含了vector头文件,而且也使用using指示。在一些简单的分析和尝试之后,问题很容易就解决了。这是一个命名冲突的问题,我们之前定义的_UTILITY_和vector头文件冲突了。下面附上简单的问题代码: utility.h1#ifndef _UTILI...
转:原文链接http://blog.sina.com.cn/s/blog_a3a8d0b1010100uw.html一、 类和接口1、 命名:类名都以大写字母“C”开头,后跟一个或多个单词。每个单词的首字母要大写。接口以大写"I"开头,代表Interface。2、 组成形式:推荐用"名词"或"形容词+名词"的形式,例如:"CAnalyzer", "CFastVector" ....二、 函数1、 命名:函数的名称由一个或多个单词组成。每个单词的首字母要大写。最长不得超过20个字符。2、 组成形式:全局函数应...
时间:2014.03.02地点:基地----------------------------------------------------------------------------------------一、简述 Google 的C++规范号称世界上最优秀的编码规范,于是拿来研究下,已改善自己以后的工作,今天只先学习下它的命名规范。----------------------------------------------------------------------------------------二、命名规则1.文件命名规则 文件名全部小写,可以含下划线或连字符,按项目约定命...
一、为什么使用命名空间考虑一种情况,当我们有两个同名的人,Zara,在同一个班里。当我们需要对它们进行区分我们必须使用一些额外的信息和它们的名字,比如这个区域,如果它们生活在不同的区域或者它们的母亲或父亲的名字,等等。 在您的C++应用程序中也会出现同样的情况。例如,您可能正在编写一些具有名为xyz()函数的代码,并且还有另一个可用的库,它也具有相同的xyz()函数。现在编译器无法知道您在代码中引用的xyz()函...
最近学习C++觉得一定要理论联系实际,于是就想用C++的名空间实现数据的隐藏,为用户提供数据接口,我就想这实现一个简单的出栈和入栈的操作。这个程序由于设计的很简单,我没有添加很多容错判断。大家可以提出一些完善的建议。 1 #include <iostream>2usingnamespace std;3 4namespace Stack { //实现 5constint max_size = 200;6char v[max_size];7int top=0;8int bottom=0;9void push(char c);
10char pop();
1112};
1314void St...
using namespace std;namespace name1 {void func(){ cout << "Hello1" << endl;}}namespace name2 {void func(){ cout << "Hello2" << endl;}}namespace {void func1(){ cout << "Hello2" << endl;}//由于此函数是无名命名空间,所以此函数只能在此命名空间里面使用,这种用法一般很少}using namespace name2;int main(){ func(); return 0;}原文:http://www.cnblogs.com/tiantiantian-dianzi/p/5988242.html
C与CPP不同以及命名空间简介命名空间在软件设计中的作用就是为了实现迭代式开发。命名空间的别名#include <iostream>namespace runrunrunrun
{int a(10);char *str("gogogo");namespace run //命名空间的嵌套{int a(9);}
}
namespace runrunrunrun //命名空间的拓展
{int y(5);//int a(15);重定义错误
}
namespace r = runrunrunrun;//给命名空间起一个别名void main132()
{std::cout << r::run::a << std::endl;//命名空间可...
程序中不能有两个函数名一摸一样的,但是程序做大了,就很可能会造成两个同名同参的函数;这样就会导致歧义而错误。
所以做出命名空间,可以做到只要是不同的空间中可以同名同参函数,这样以后其他人来做了,可以不用看以前写了什么函数名,而只要弄个新的空间,就可以随意的写函数名了。这样就更加方便程序的维护!这在比如PHP中用的很多,而且加强了命名空间的使用,如:TP5中有很多层级的命名空间,原理是一样的。#include<iost...
新置MP3一件,居然没有随机播放的功能,坑啊!身为程序媛一枚,自己动手吧~获取当前路径:char buf[1000];GetCurrentDirectory(1000,buf); string cur_folder_file = string(buf)+"\\*.mp3";获取当前路径mp3文件列表:void getMp3Names(string filepath,vector<string> &names)
{names.clear();WIN32_FIND_DATA f;HANDLE h = FindFirstFile(filepath.c_str() , &f);if(h != INVALID_HANDLE_VALUE){do{names.push_back(f.cFileName)...
转载自:http://blog.sina.com.cn/s/blog_8a7012cf01017h9p.html变量命名规则是为了增强代码的可读性和容易维护性。以下为C++必须遵守的变量命名规则:1、 变量名只能是字母(A-Z,a-z)和数字(0-9)或者下划线(_)组成。
2、 第一个字母必须是字母或者下划线开头。
3、 不能使用C++关键字来命名变量,以免冲突。
4、 变量名区分大小写。变量命名规则:
一、 用最短字符表示最准确的意义。
二、 使用变量...
using使用命名空间要注意一下几点:
1、简化了从命名空间的成员访问
namespace veryLongName {int a=100;void func(){cout<<"hello namespace"<<endl;}}void test07(){//使用veryLongName命名空间using namespace veryLongName;//出现的变量 从veryLongName命名空间中找 找不到 从其他地方中cout<<"a = "<<a<<endl;func();}2、using 使用整个命名空间
namespace veryLongName {int a=100;void func(){cout<<"hello namespace"<<end...
第四章 C++编程之命名空间
4.1 域运算和命名空间
条件:通过命名空间和域运算的实现 命名空间的好处:解决了不同工程师定义了相同的类名,避免了冲突,例如: 工程师1命名了一个类叫person,而工程师2也定义了一个类person,此时类就会同名,引入命名空间,避免了这种冲突
4.2 命名空间的使用
代码关系梳理: 命名空间A定义了animal类和person类;命名空间P定义了person类
4.3 代码例程
1、在命名空间A定义animal类和person类的头文...
C++引入命名空间,作为附加信息来区分不同库中相同名称的函数,类,变量等,使用了命名空间即定义了上下问,本质上命名空间就是定义了一个范围。
定义命名空间:
命令空间的定义使用关键字namespace,后面跟命名空间的名称,如下所示:namespace namespace_name
{//代码声明
}为了调用带有命名空间的函数或变量,需要在前面加上命名空间的名称,如下:
name::code;
采用实例来看看命名空间如何为变量或函数等实体定义范围/***
n...
当你采用不同的模块和/或程序库时,经常会出现名称冲突现象,这是因为不同的模块和程序库可能对不同的对象使用相同的标识符(identifier)。Namespace正是用来解决这个问题的。所谓 namespace是指标识符的某种可见范围。和class不同,namespace具有扩展开放性,可发生于任何源码文件上。因此你可以使用一个namespace来定义若干组件,而它们可散布于多个实质模块(physical module)内。这类组件的典型例子就是C++标准库,因为C++标...