`
韩冬冬
  • 浏览: 14256 次
  • 性别: Icon_minigender_1
  • 来自: 天津
最近访客 更多访客>>
社区版块
存档分类
最新评论

基础总结 锦集

阅读更多
  char cal1[] = {'C','+','+'};//维数是3
 char cal2[] = "c++";//维数是4
 //char cal3[] = cal1;//不能用一个数组初始化另一个数组
 //char &cal4[] = {'C','+','+'};//c++不允许数组引用

 

string *ps = new string("Hello World!");
delete ps;//此时ps为空悬指针,需将ps = 0;
ps = 0;//至此彻底收回 动态内存

 

 int ival = 1024;
	void *pv;
	int *pi = &ival;
	int *pi1;
	pv = pi;
	//pc = pv;//不存在从*void型指针到特殊类型的指针之间的自动转换
	pi1 = static_cast<int *>(pv);
	cout<<*pi1<<endl;

 

string str("tianshi");
str.erase(1,string::npos);//跟str.erase(1)效果一样,删除位置1以后所有的字符

 

void putValues(int (&arr)[4]);//当参数声明为数组引用时,长度成为参数和实参类型的一部分,需要检查
int arr[] = {1,2,3};
//putValues(arr);//错误,数组长度不匹配,实参为3,形参为4


//数组永远不会按值传递,只会传递指向一个数组的指针
//三个等价的putValues()声明
void putValues(int *);
void putValues(int []);
void putValues(int [4]);

 

//宏定义的典型错误
#include "stdafx.h"
#include <iostream>
#define min(a,b) ((a) < (b) ? (a) : (b))
using namespace std;

const int size = 10;
int ia[size];
int _tmain(int argc, _TCHAR* argv[])
{
    int elem_cnt = 0;
	int *p = &ia[0];
	while(min(p++,&ia[size]) != &ia[size])//p++执行了两次
		++elem_cnt;
	cout<<"elemt_cnt:"<<elem_cnt<<endl;//输出值为5,错误
	cout<<"expecting:"<<size<<endl;

	return 0;
}

 

template <class Type,int size>
	void min(Type (&r_array)[size])
	{
		cout<<r_array[0]<<endl;
	}

//以下模板使用时错误的
//假如有个函数定义   如下
void f(int i_array[2])
{
    min(i_array);//错误的,因为int i_array[2] 为int* 类型的,模板不知道此处为一个数组
}
//以下为正确使用方式
void f()
{
    int i_array[2] = {1,2};
    min(i_array);//此处调用正确
}

 

//函数模板设计者必须确保
//1、为模板定义中用到的、所有不依赖于模板参数的名字“先”提供声明
//2、为模板定义中用到的、所有依赖于模板参数的名字,在模板实例化之前提供声明

 

//如果函数模板存在于名字空间中,则当为该模板显示特化时,有以下两种方式:
//1、重新打开名字空间的定义并加上该特化的定义
//2、通过用外围名字空间名  来限定修饰名字空间成员名
//    例如:template<> int 空间名字::min<int>(int *array, int size){/*.......*/}

 

//catch(...)捕获所有的异常对象
//异常声明是函数接口的一部分,它必须在头文件中的函数声明上指定。
//异常规范保证该函数不会抛出任何没有出现在异常规范中的异常。
//    例如:void pop( int &) throw(popOnEmpty);
//    对于pop()的调用,保证不会抛出任何popOnEmpty类型之外的异常。
//当带有异常规范的函数指针被初始化(或被赋值)时,对于用作初始值的指针类型有一些限制。
//这两个指针的异常规范不必完全一样,但是用作初始值的指针异常规范必须与被初始化的指针异常规范一样或更严格。
//例如 
void recoup(int, int) throw(exceptionType);
void no_problem() throw();
void doit(int , int) throw(dtring,exceptionType);

//正确,异常规范一样严格
void (*pf1)(int, int) throw(exceptionType) = &recoup;
//正确,no_problem() 的异常规范 比 pf2 更严格
void (*pf2)() throw(string) = &no_problem;
//错误,doit() 没有 pf3 严格
void (*pf3)(int,int) throw(string) = &doit;

   

#include "stdafx.h"


#include <iostream>
using namespace std;
#define min(a,b) ((a) < (b) ? (a) : (b))//没执行一次p++两次(!!!!)

const int size = 10;
int ia[size];

int _tmain(int argc, _TCHAR* argv[])
{
	int elem_cnt = 0;
	int *p = &ia[0];

	//计数数组元素的个数
	while( min(p++,&ia[size]) != &ia[size])
		++elem_cnt;

	cout<< "elem_cnt :" <<elem_cnt<<endl;//输出:5
	cout<<"expecting :" <<size<<endl;//输出:10
	return 0;
}

 

分享到:
评论

相关推荐

    数学教学总结锦集六篇.docx

    通过《数学教学总结锦集六篇.docx》的阅读与总结,我们可以深刻体会到一位数学教师在教学实践中的种种努力与思考。 首先,教学反思与总结是教师成长的必经之路。通过回顾自己的教学过程,教师可以更加深入地理解...

    软件实习总结锦集七篇.doc

    在《软件实习总结锦集七篇》中,我们看到了一位实习生在软件公司的成长与收获,他将实习过程中遇到的挑战和经验教训转化为宝贵财富,为自己的职业生涯开启了新的篇章。 首先,实习经历的开始往往伴随着角色的转变。...

    软件实习总结锦集十篇.doc

    《软件实习总结锦集十篇》是对学生在软件实习过程中的学习和实践经验的全面总结,旨在帮助学生将理论知识与实际操作相结合,提升分析和解决问题的能力。以下是对实习内容的详细解析: 一、系统管理和基础设置 这...

    汽车实习总结锦集5篇.doc

    汽车实习总结锦集为实习人员提供了一个全面了解和掌握电控系统维修技术的平台。通过这些总结,技术人员可以深刻理解电控系统的结构原理,掌握各类故障的诊断方法,提高排除故障的效率和准确性。同时,这也有助于技术...

    大学学习总结锦集八篇.doc

    这篇总结锦集涵盖了学习部的工作亮点、挑战、个人感悟以及学习委员的角色和责任,展现了大学学习生活的多样性和重要性。 1. 学习部工作: - **考勤管理**:学习部负责监督学生的出勤情况,以此增强学生的自律性,...

    关于数学教学总结锦集7篇.docx

    本文将从多个维度,对给定的数学教学总结锦集进行深入探讨。 首先,教师的教学态度和方法直接关系到教学质量和学生的学习效果。在教学中,教师需要以严谨的态度对待教学内容,保证知识的准确性和科学性。同时,教师...

    数控专业实习总结锦集七篇.doc

    《数控专业实习总结锦集七篇》的文档主要围绕数控技术的专业实习展开,涉及了数控技术的基本概念、发展背景、实习过程以及实习的意义等多个方面。以下是详细的总结: 数控技术是现代机械制造领域的核心技术,它利用...

    软件实习总结锦集5篇.doc

    【软件实习总结锦集5篇】的文档是一个包含多个实习生经验分享的集合,主要涵盖了实习生在软件公司工作期间的经验、收获以及对未来的展望。以下是基于文档内容提炼的关键知识点: 1. **实习公司背景**: - 实习的...

    大学生学习总结锦集9篇.doc

    【大学生学习总结锦集】 这篇文档是对大学生学习和生活经历的总结,主要涵盖了以下几个方面的知识点: 1. **自我认知与目标设定**: - 学习者意识到高考失利带来的挫败感,认识到高中应试教育可能限制了个人兴趣...

    关于机械实习总结锦集7篇.doc

    关于这篇《关于机械实习总结锦集7篇》的文档,主要涵盖了机械实习过程中的学习体验、实践挑战以及个人成长等多个方面。以下是对这些知识点的详细阐述: 1. 实习的意义:实习是理论与实践相结合的重要环节,对于学习...

    毕业生实习总结锦集六篇.doc

    在“毕业生实习总结锦集六篇”中,我们可以提炼出以下几个关键知识点: 1. **实习的意义**:实习不仅是对所学专业理论的实践检验,而且有助于提升个人的动手能力和适应社会的能力。它可以帮助我们建立从学生到工作...

    大学生毕业实习总结锦集6篇.doc

    【标题】和【描述】均提到“大学生毕业实习总结锦集”,这表明文档是一份包含多位大学生实习经验的集合,旨在帮助读者理解实习过程、学习经验及个人成长。虽然【标签】为空,但从【部分内容】中可以提炼出以下几个...

    试验室年终总结锦集8篇_1.docx

    在回顾过去一年的工作时,试验室年终总结锦集8篇不仅记录了试验教学的开展、实验室活动的举行、成果的展示以及存在的问题和改进措施,更见证了教育理念与实践的深度融合。本文将详细解析试验室一年来的辛勤工作,并...

    软件实习总结锦集八篇.doc

    1. **总结的重要性**:总结是对实习期间工作、学习和思想的反思,有助于提炼经验,总结教训,为今后的职业发展打下基础。 2. **初入职场的心态调整**:初次步入社会,实习生可能会感到激动、紧张和失落。这是正常的...

    工作实习总结锦集六篇2.doc

    工作实习总结是对个人在实习期间工作、学习和思想体验的全面回顾与总结,它强调了自我反思和经验积累的重要性。以下是从给定内容中提炼出的相关知识点: 1. **工作总结的意义**:总结可以帮助我们总结经验,找出现...

    员工年终个人工作总结锦集5篇.docx

    根据给定的信息,本文将重点围绕“员工年终个人工作总结”这一主题进行展开,结合文档的部分内容,提炼并生成相关的知识点。...无论是个人还是企业层面,都应该重视这一环节,以此为基础推动持续的成长和发展。

    消防年度总结锦集5篇(精选)-6页.pdf

    【消防年度总结锦集】 消防工作是保护自然资源、生态环境和人民生命财产安全的重要一环。在分析当前形势时,我们注意到由于气候因素导致的可燃物增多,以及交通和旅游活动的增加,使得森林火险因素上升。因此,增强...

    数控专业实习总结锦集5篇.doc

    数控专业实习总结是对学习和实践的...总结来说,数控专业实习不仅是技能的提升,更是对专业领域全面认知的过程,它锻炼了学生的实践能力,培养了他们解决问题和适应新环境的能力,为未来的职业生涯打下了坚实的基础。

    软件实习总结锦集六篇.doc

    软件实习总结是对实习期间学习和实践经历的回顾与反思,旨在通过总结经验,提炼出具有规律性的认识,以提升个人的专业技能。以下是对实习中涉及的软件知识的详细说明: 1. **系统管理和基础设置**:这是软件操作的...

    工作实习总结锦集六篇.doc

    工作实习总结是对个人在实习期间工作、学习和成长经历的回顾和反思,是提升自我能力的重要途径。在本文中,作者分享了他在武汉市第二职业教育中心学校的实习经历,涉及教学和班主任工作,从中揭示了一些中专教育面临...

Global site tag (gtag.js) - Google Analytics