什么时候该写函数,什么时候该写类。

把重复的代码写成单独的函数,如果有许多重复顺序的函数调用,就再组织成一个函数。如果这些函数有共同的数据,可组织成一个类。(其实数据才是灵魂,函数本身是空洞无物的,是表象、外在接口和服务工具。调用Winapi看上去可以立即实现某些功能,实际上也是这个函数修改了OS的内部数据才实现了相应的功能)

话说,如果既没有重复的代码,也没有重复的函数调用,那么这5000行代码很可能就是应该写在一起!

时间: 2024-10-11 07:27:14

什么时候该写函数,什么时候该写类。的相关文章

自写函数VB6 STUFF函数 和 VB.net 2010 STUFF函数 详解

'*************************************************************************'**模 块 名:自写函数VB6 STUFF函数 和 VB.net 2010 STUFF函数 详解'**说    明:蓝凤凰设计商城 浴火凤凰-郭卫 | 蓝凤凰-魔灵 | 郭卫-icecept'**创 建 人:浴火凤凰-郭卫'**日    期:2015年10月10日  23:13:55'**修 改 人:浴火凤凰-郭卫'**日    期:'**描   

在c++ 模板类外写 操作符重载函数,并且是模板类的友元函数

看视频教程说不能在c++ 模板类外写 操作符重载函数,并且是模板类的友元函数 我试了试,可以,放出测试代码: #include <iostream> using namespace std; template<typename T> class A { public: A(T a) { this->a = a; } template<typename T> //加上这句就可以了 friend A<T> operator+(A<T> &

oracle 10G 没有 PIVOT 函数怎么办,自己写一个不久有了

众所周知,静态SQL的输出结构必须也是静态的.对于经典的行转列问题,如果行数不定导致输出的列数不定,标准的答案就是使用动态SQL, 到11G里面则有XML结果的PIVOT. 但是 oracle 10G 没有 PIVOT 函数怎么办,自己写一个不久有了.上代码 直接点. CREATE OR REPLACEtype PivotImpl_shx as object( ret_type anytype, -- The return type of the table function stmt varc

Mysql 读与写函数利用学习

语句简单记忆:         select load_file();         select '一句话' into outfile '网站路径' ; 1.Mysql 读与写函数 (1) 读取函数 load_file() (2) 写入函数 into outfile '' into dumpfile '' 2.Mysql读函数使用 (1)读配置文件语句 select load_file('/etc/httpd/conf/httpd.conf') select load_file('/etc/

JS调用函数时候加括号与只写函数名字的区别 fn与fn()的区别

经常见插件里面函数调用的时候只写个函数名字,不写函数参数,甚至连括号也不写,比如说: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8" /> 5 <title></title> 6 <script type="text/javascript"> 7 function a1(){ 8 alert('a'); 9 re

js函数定义 参数只要写名称就可以了

js函数定义  参数只要写名称就可以了 以下为标准: function add(type)  { } 不要写成下面这个样子 function add(var type)  { } 哎 妹的  老何java混淆

请遵守好的编程风格 -- 关于.h文件去写函数的具体实现

今天往工程里添加Log.h和Log.cpp这用来打印log的文件时, 编译报错误. Log.cpp里的一些函数调用func1(), func2(), funcXXX()找不到实现, 可是那些函数明明在公共的接口库xxx.h和xxx.cpp里有声明和实现啊, 函数包含也没有问题. 问题排查 --> xxx.h里的函数声明都是static的, 很奇怪, 经对比, 只是我这个项目里这样, 其它项目里的这个公共接口库xxx.h里的函数声明并非static, 看来是之前维护这套代码的某猿给统一加上的. -

Python(69)_写函数,实现修改文件内容

#-*-coding:utf-8-*- import os ''' 写函数,用户传入修改的文件名,与修改的内容 执行函数,完成整个文件的批量修改操作 ''' def func(filename,old,new): with open(filename,encoding='utf-8') as f,open('%s.bak'%filename,'w',encoding='utf-8') as f2: for line in f: if old in line: line = line.replac

不要在头文件中写函数定义

我们都知道static声明静态函数在别的文件是不可以使用的,但是如果你将定义也写在.h文件下是不是还是这样的呢,或者说编译器会不会提示你这样是有问题的呢?结果却是将static函数的定义直接写在了file.h的头文件中,导致staic关键字失效,代码如下. //file1.h #include <iostream>using namespace std; static void fun() { cout << "static fun" << ends

C++学习笔记(十二):类继承、虚函数、纯虚函数、抽象类和嵌套类

类继承 在C++类继承中,一个派生类可以从一个基类派生,也可以从多个基类派生. 从一个基类派生的继承称为单继承:从多个基类派生的继承称为多继承. 1 //单继承的定义 2 class B:public A 3 { 4 < 派生类新定义成员> 5 }; 6 //多继承的定义 7 class C:public A,private B 8 { 9 < 派生类新定义成员> 10 }; 我们这篇主要说单继承. 派生类共有三种C++类继承方式: 公有继承(public) 基类的公有成员和保护成