面向过程的编程风格
什么是面向过程我想如果你还不知道,那你绝对不是C程序员!其实我个人感觉面向过程、模块式的C编程风格是最棒的范式,因为平时我们遇到的大多数问题,都可以用这种范式解决,而且设计相当的简洁明快,绝不拖泥带水,相反不停的折腾面向对象模型真的会让你离问题本质越来越远。不管你已经对面向过程范式多么熟悉了,C++环境下究竟还是有些不同的:
1.关于引用:
引用是现代编程语言中常有的一个概念,自然也是C++引入的新语言特性,是C++常用的一个重要内容。然而我不能不吐槽一句,难道就不能用个其他的操作符吗?于习惯使用C进行开发的朋友们,在看到c++中出现的&符号,可能会犯迷糊,因为在C语言中这个符号表示了取地址符,但是在C++中它却用来表示引用,于是乎产生了一大批混乱的写法:
#include <stdio.h>
int main(void)
{
int a = 0; // &a = 0x0012ff60
int *p = &*(int*)0x0012ff60;
printf("The value is: %d\n", *p);
return 0;
}
我真的不想贴出来,每每看到都想吐、、 总之这是一个很奇葩的现象,在一门已经有了指针这个究极武器的语言中再引入引用,真的是很混乱。我的建议是:
a)如果你是C++程序员,用好你的引用吧,别来玩弄指针了;
b)相反你是C程序员,那请自爱,远离引用!!至少C with Class里是禁止使用的。