c++
c++
pandapandapandap
这个作者很懒,什么都没留下…
展开
-
c++中complex类的实现
#ifndef __MYCOMPLEX__#define __MYCOMPLEX__class complex; complex& __doapl (complex* ths, const complex& r);complex& __doami (complex* ths, const complex& r);complex& __doaml (complex* ths, const complex& r);相同类的各个实例对象原创 2020-10-19 15:52:31 · 1025 阅读 · 0 评论 -
c++中的inline内联函数
1.inline关键字用来定义一个类的内联函数,引入它的主要原因是用它替代C中表达式形式的宏定义,解决一些频繁调用的小函数大量消耗栈空间(栈内存)的问题。2.inline的使用是有所限制的,inline只适合涵数体内代码简单的涵数使用,不能包含复杂的结构控制语句例如while、switch,并且不能内联函数本身不能是直接递归函数(即,自己内部还调用自己的函数)。3.inline函数仅仅是一个对编译器的建议,所以最后能否真正内联,看编译器的意思,它如果认为函数不复杂,能在调用点展开,就会真正内联,并不是说原创 2020-10-19 15:02:22 · 110 阅读 · 0 评论 -
C++中的explicit作用
C++中, 一个参数的构造函数(或者除了第一个参数外其余参数都有默认值的多参构造函数), 承担了两个角色。 1 是个构造器 ,2 是个默认且隐含的类型转换操作符。所以, 有时候在我们写下如 AAA = XXX, 这样的代码, 且恰好XXX的类型正好是AAA单参数构造器的参数类型, 这时候编译器就自动调用这个构造器, 创建一个AAA的对象。这样看起来好象很酷, 很方便。 但在某些情况下(见下面权威的例子), 却违背了我们(程序员)的本意。 这时候就要在这个构造器前面加上explicit修饰, 指定这个构造原创 2020-10-19 14:57:42 · 440 阅读 · 0 评论 -
c++主函数main中变量(int argc,char *argv[ ])的含义
main(int argc, char *argv[ ], char **env)才是UNIX和Linux中的标准写法。argc: 整数,用来统计你运行程序时送给main函数的命令行参数的个数argv[ ]: 指针数组,用来存放指向你的字符串参数的指针,每一个元素指向一个参数argv[0] 指向程序运行的全路径名argv[1] 指向在DOS命令行中执行程序名后的第一个字符串argv[2] 指向执行程序名后的第二个字符串**env:字符串数组。env[ ]的每一个元素都包含ENVVAR=valu.原创 2020-10-18 22:02:28 · 844 阅读 · 0 评论